Skip to main content

Full text of "CBM 8-Bit Magazine Index: Compute's Gazette Special Section"

See other formats


¢ 10 PRINTER ADD- 
FOR SIZZLING OU 


e 7 DRAW PACKAGES 
FOR GRAPHICS oe \ \ j 
Plus! oe 2 


° HOT ACCOUNTING sa 
SOFTWARE 
° TOP NEW FOOTBALL 


0°"71486'02193' "3 


oe 


ee 


sn “<< Sa 


64/128 VIEW 


Old Mother Hubbard went to the cupboard to fetch 
her poor dog a bone, but when she got there, the cupboard 


was bare—even the 64 products were gone. 


Tom Netsel 


funny thing happened 

today at our cupboard 

for new software. When 

| got there and opened 

its doors, the cupboard was 

bare. There was no new soft- 
ware for the 64. 

Uh-oh! How can | fill all 
those gaping review pages, 
when | don't have software 
to review? There must be 
something in there that I've 
overlooked. Desperation 
does wonders for one’s pow- 
ers of observation. 

Aha! There's a package! 
It's a little dusty, but | 
haven't seen it before. Sure- 
ly it's something worth re- 
viewing. We can give it a 
good workout and milk it for 
a few thousand words. It's 
bound to be of interest to mil- 
lions of Commodore users 
around the world. 

As | wiped the grime 
from the faded software 
box, my hopes for filling the 
review section faded about 
as quickly as a smile ap- 
pears on the face of a soft- 
ware rep when | ask, “What 
do you have new for the 
64?" As | struggled to stay 
afloat in the cruel waters of 
the publishing business, | re- 
alized that this thin yellow 
package | was grasping 
was made of straw—and wa- 
terlogged straw at that. 

The product must have 
slipped from the shelf 
above. That’s where we put 
the software that never 
quite made it into Gazette re- 
view pages. That's the shelf 
where we stash titles such 
as Great Moments in Bowl- 
ing for the Adam Coleco or 
the VIC-20 version of Ther- 
modynamic Equations for 
LAN Designers. 

In this case, the program 
turned out to be a spelling 
program from a guy in a 


small California town who 
worked out of a post office 
box. Unfortunately, it was 
published in 1984, and was 
not the stuff to fill my review 
pages. 

It's amazing how things 
have changed! A few years 
ago, when | assigned re- 
views for COMPUTE and Ga- 
zette, new software titles 
vied for attention on several 
shelves. The 64 titles were 
king. They filled several 
shelves at the top of the cab- 
inet. Down near the floor, 
occupying half a shelf, were 
the IBM titles. 

The 64 was at its peak. 
Dozens of new titles came 
in every day. An IBM still 
cost megabucks, and its soft- 
ware consisted of mono- 
chrome productivity titles 
that cost $495 each. There 
were a few games that util- 
ized CGA graphics and man- 
aged a puny beep or two, 
but they paled next to the 
64's 16 colors and three- 
voice SID chip. 

As the jiffy clock ticked 
away, and months turned in- 
to years, we had to reallo- 
cate shelf space. New titles 
for the 64 arrived steadily, 
but IBM products hit us with 
all the subtlety of a flash 
flood. Today we have a 
whole room reserved for 
IBM software, and the 64/ 
128 shelf resembles Mother 
Hubbard's cupboard. 

A few reviews are in the 
works, but it'd be nice to 
see more new things for the 
64 again. So take note, soft- 
ware developers: If you 
have a Commodore product 
that's never been reviewed, 
now's a great time to let us 
and the rest of the Commo- 
dore world know about it. 
Send us a review copy; 
don’t keep it a secret. a 


GAZETTE 


64/128 VIEW G-1 


It's tough to review new 64 software when the 
software companies don't send anything new. 
By Tom Netsel. 


ONE MAN’S WORK DISK G-2 


Pull all of your often-used utilities together, and 
spend your time at the keyboard more efficiently with 
a customized work disk. 

By Don Radler. 


REVIEWS G-10 


Supra 2400 modem, Panasonic KX-P2123 24-pin 
printer, NovaTerm terminal program. 


FEEDBACK G-15 


Questions and comments from our readers about 
converting SpeedScript files to IBM format, learning a 
programming language, and more. 


BEGINNER BASIC G-18 


Customize your keyboard while learning about keys 
that are unique to your Commodore. 


By Larry Cotton. 

MACHINE LANGUAGE G-20 
Use a double buffer to produce fine scrolling. 

By Jim Butterfield. 

GEOS G-22 


What's the best input device for use with GEOS? 
Examine the alternatives and their drivers. 
By Steve Vander Ark. 


PROGRAMMER’S PAGE 6-24 
Here are some tips and tricks for disk drives. 

By Randy Thompson. 

PROGRAMS 

Drixella’s Dilemma G-25 
Character Designer G-27 
Smart Format G-32 
DLiner G-34 
XLogic G-35 
Polygons G-38 
How to Type In Gazette Programs G-40 


SEPTEMBER 1992 COMPUTE G-1 


ONE 
MAN'S WORK 
DISK 


MAKE YOUR COMPUTING SESSIONS MORE 
EFFICIENT BY CREATING 
YOUR OWN CUSTOMIZED WORK DISKS. 


BY DON RADLER 


ver time, most computer us- 

ers develop a collection of 

utilities that they find them- 

selves using over and over 
again. Out of all the programs in a col- 
lection, these favorites are the ones 
that rise to the surface. 

Usually, these gems reside on sev- 
eral different disks, arranged in whatev- 
er order seemed suitable at the time 
they were first saved. You have to re- 
member where each one is, refer con- 
stantly to some master list, or load and 
list disk directories like mad in search 
of exactly the right program for this or 
that need. Then you have to recall 
whether program A is compatible with 
program B or just try it and see. As of- 
ten as not, the computer locks up. 

When | retired a few years ago, | start- 
ed playing around with a 64. Through 
the dealer who sold me the machine, | 
bought someone's collection of sever- 
al hundred programs on disk. There 
were utilities, applications, games, and 
a slew of unidentified—and for quite a 
while, unidentifiable—programs. 

There was no documentation of any 
kind. The only way | could learn any- 
thing about the programs was to load 
‘em, run ‘em, and list 'em. Painfully, bit 
by bit, | became familiar with the 64. 
For many people, to know it is to love 
it. | proved to be one of those people. 

Like most people, | learned about 
the PRINT statement first. As some- 
thing of a nut about color and compo- 
sition, | modified the screens on most 
BASIC programs to make them satisfy 
my eye. | played with screen color, bor- 
der color, POKEs, and so on. | started 
reading COMPUTE's Gazette, which be- 
came my only tutorial. And | began typ- 
ing in the programs it published. 

Then | had a stroke of luck: The lo- 
cal library sold off its holding of back is- 
sues of Gazette at ten cents a copy. | 
took advantage of that bonanza with- 
out hesitation, buying up the complete 
caboodle. It started with the February 
1984 issue and ran slightly beyond the 
first issue | had bought on the news- 
stand. With those and my current sub- 
scription, | now have every issue from 
early 1984 to the present, with the ex- 
ception of June 1989, which is unac- 
countably missing. (If anyone has one 
to spare, I'd love to have that issue. 
The issues before January of 1984 
would be of historical value, but are 
probably too much to hope for.) 

And | kept on typing in programs. 


I've Got To Get Organized 

Soon | had a truly formidable collection 
of programs on disk and a crying 
need to get organized. | was begin- 
ning to sell some articles and pro- 
grams to magazines, so | needed to 


G-4 COMPUTE SEPTEMBER 1992 


make my programming sessions more 
efficient. This meant upgrading all my 
work disks, but especially the one | 
still keep in the front of the first disk 
case, the one | use all the time. 

Many necessary utilities are stored 
on this disk, including Gazette's MLX 
and The Automatic Proofreader. Also 
stored are supporting utilities for those 
data-entry programs, which I'll discuss 
later in this article. 

As | discovered new programs and 
learned more about using them, my 
work disk changed. As | added new 
programs, | deleted others. Today, my 
work disk doesn't look at all like the 
disk it was even a year ago—and it’s 


Oo Aud 
MSSSGS> 
C seerse 


uw 


i 
i 
7 
2: 
6 
i 
i 
rf 
i 
8 
2 
4 


"0°000-0-0-V-TVUT TTD 
9979797397070 90 OIG IGIO PIT FDIS PION 


a 
DHAHAAAHOAHHASHOHIAEY 


GRAATIAAGS 
SBUMOMOOH- Oo! 
BAMOTAIAIAOVO- 


wT -0v: 


Oro ercorsene 
33 


Alphabetical directories are a big help. 


L DISPLAY DATA | 
STARTING AT? CCH 
PRESS: Sidild3 TO PAUSE, 


8 
8 
BE 
5 
3 


8 
3 
8 
4 
‘i 
3 
£ 


Elntatatatatatateeatntetatated 
einintatetatatatatetstateiate] 
Root SoSSSaS> 
DVS DVS DMIDMDO 


DOO TOS TSSSENOIOD 


Sewn 


Utilities such as MLX go on every disk. 


still evolving—but it does make my com- 
puting life easier and more efficient. 
It's no surprise to me that many of 
the programs now on that much-used 
disk are from Gazette. I've typed in a 
good many programs over the years. It 
might be of value to other Gazette read- 
ers to see how that disk is currently or- 
ganized, so here's what works for me. 


Work Disk 

The first listing is Art Hunkins' Keyload 
from the July 1986 issue of Gazette. | 
use Epyx's Fast Load cartridge, which 
loads and runs Art's program when | 
hit the Commodore and Run/Stop 
keys simultaneously. Then | simply cur- 
sor down to the program | want and hit 
Return, and it loads and runs. This se- 
quence can be repeated after I've fin- 
ished with one utility and I’m ready to 


use another one. (If | want to look over 
a listing rather than run the program 
immediately, | just type an L at the cur- 
sor and hit Return—the program loads 
and waits to be listed.) 

Hunkins gets my thanks for writing a 
version for the Fast Load cartridge. For 
readers who don't use that cartridge, 
Art's regular version for the 64 lets you 
merely type LOAD “*" 8 to call up Key- 
load to be run or listed. 


First Program 

| save Keyload with the filename OKEY 
for alphabetizing purposes. It's the 
first program on most of my disk direc- 
tories. It's great for use on my Sound Ef- 
fects disk, calling up each sound and 
letting me hear it just by cursoring to 
the effect and hitting Return. It's really 
handy at the top of my Household Help- 
ers disk, running First Aid (October 
1984), Monthly Calendar (March 1989), 
or Speed Reader (February 1984) 
when | cursor to it and hit Return. 


Save the Monitor 

After Keyload, the next program on my 
work disk is Monitor Blackout. This pro- 
gram was printed in a Gazette “Feed- 
back" column (March 1989). If you 
think you might be pulled away from 
the computer for a while, it pays to run 
this short utility at the start of the ses- 
sion to protect your monitor's screen 
from burned-in characters. If you don't 
touch your keyboard after a predeter- 
mined length of time, the program 
blanks the screen to the border color. 
As soon as you hit any key, the screen 
returns to normal. 


Copy This Disk 

Then there's C64 Fast Copy, a disk cop- 
ier from Kracker Jax that's the smooth- 
est I've tried. It's worth using in place 
of the disk copier on the Fast Load car- 
tridge. This takes nothing away from 
Fast Load. | use it all the time to copy, 
scratch, lock, unlock, and rename indi- 
vidual files, but not to copy a disk. In 
fact, for formatting a disk and copying 
or scratching batches of files, | use 
“none of the above” and switch to my 
Fast Hack 'Em disk from Basement 
Boys Software. But its disk copier 
doesn't match C64 Fast Copy either. 


Alphabetical Order 

| keep disk directories alphabetized. 
This makes finding programs easier 
and speeds up the cataloging process 
with the disk-management program | 
use, which takes input from directories. 
The best program that I've found for 
this is a Gazette program called Disk Di- 
rectory Sort by N.A. Marshall (March 
1985). Although the program is short 
(35 lines), it runs too slowly for my 


Basic Package 


299” 


Commodore-Ready Printer 


from Star 
At An Incredible Price! 


$] 19” 


Ne 1000C. 
Njoy near-letter quality at 36 

speed draft at 144 Sa fess 
paper parkin: 


ia aod high- 
‘es the new 
9 function and convenient 


front panel controls, Includes fe i LER 
fonts and over 20 typestyles, thsisthe 
Commodore-ready version of the NX-1000. 
roel plug it in and start Printing—no addi- r yf 
ional interfaces or cables required, OTHER(STAR PRINTERS 
Sug. R 
NX-1000€ Printer sear 322.0 N00 Multi-Font 90895 $139.95 
. SPECIAL! $119.95 NX-2420 Rainbow 5104 
Ribbon (NX-1000C) 75471 $5.95 NX-1020 Rainbow Asiag? hres 
77789 $8.95 LaserPrinter 4 A57934 $799.00 


Don’t miss out on the lowest prices on 
the Amiga 500, plus full line of 
Commodore and Amiga hardware, 
software, and accessories. 


ct PRICE FOR AMIGA S00! 


Pack 
TENEX Super Graphics 
Packages! — TENEXTowet Bah sascha ite esciotoo 
a : «Amiga sic SA 
Plus 3 Great Value “Sottware Bundle #1 PhD same ne Sy 
Bundle #2 & Joy’ SealWeacr 
ee - ww Agee TENEX 500 Memory Expansion 
“Sora ene ~ ‘ ol Memory Expansion e ae 
Softwar : | 
Price 
ay 5 _Totolat Reg. Sea 
e 
es chee Ubees Price $339.95 Low TENEX picks © Price 0.78 Motel 
Low TE! a or 
You Save $24.90 


Call today to receive your FREE 
catalog with the greatest prices on the 
most popular hardware and software! 


® COMMODORE 64 and COMMODORE 128 are registered trademarks of Commodore Elect 


lead-times, product prices and specifications are subject to change without notice. “APO, FPO, AK, Hi, CN, VI, GU, and foreign orders are subject to additional shipping charges. 


= Commodore* 


“AMIGA 


Commodore 64 
Computer 


Commodore 1541 Il 
Disk Drive 


Only 


169? 


oa 


Shipping, Handling, Insurance 


Order Amount Charge 
less than $19.99 $4.95 
$20.00-$39.99 $5.95 
$40.00-$74.99 $6.95 
$75.00-$99,99 $7.95 
$100.00-$149.99 $9.95 
$150.00-$299.99 $10.95 
$300.00-$499.00 $12.95 
$500.00-$699.99 $19.95 


$700.00-$999.99 $27.95 


GS5Z = 


aste. | compiled it with Blitz!, and now 
it moves right along. | can recommend 
he compiled version to anyone. 


More Utilities 

Next is Lou Sander's Disk Name/ID 
Changer, a public domain offering 
tom the Tip Master himself. This pro- 
gram changes headers and ID's with a 
minimum of fuss and, so far, with no 
glitches. 

If you have one program and want 
lo add a subroutine or other code with- 
out having to type the program in 
again, then you need a good merge 
program to combine the two. The 
merge program | use is by G.A. Pear- 
ce, and it comes from an old Transac- 
tor Disk, volume 5, number 2. The pro- 
gram is hassle-free, and it works with 
Fast Load and/or with the K-prefix utili- 
ties mentioned below. The only true 
merge program | found in Gazette was 
Disk Merge (January 1985), but it was 
painfully slow. 

Another great program is Randy Th- 
ompson’s BSAVE Notepad from the 
April 1988 issue of Gazette. This su- 
premely. handy program lets you jot 
notes to disk at any time. When you 
run the program, it prints the most re- 
cent note on the screen. If you 
change that note, it replaces the old ver- 
sion with the new one on the disk. You 


may enter a screen of text. 

Jim Butterfield’s sequential file read- 
er in “Machine Language Program- 
ming: File Handling” from the same is- 
sue is next. This program is written in 
machine language and, as with most 
of Butterfield’s work, is lean, mean, and 
useful. As written, it reads a sequential 
file and prints it to the screen. With one 
number change in line 350, it will send 
its output to your printer. 

Then there’s Quick Print by Chuck 
Webb from the May 1989 issue of Ga- 
Zette. With this program, you can 
send lines to the printer one at a time 
without first loading a word processor. 
It will also work without disturbing what- 
ever program you have in memory. It's 
great for writing notes about the cur- 
rent program or for addressing enve- 
lopes or making labels. All it takes to ac- 
tivate this program is a simple SYS 
address call. 


K Utilities 

If my work session is going to be one 
of writing or entering programs, | disa- 
ble Fast Load and go to a group of util- 
ities filed on the work disk with the ini- 
tial letter K. 

First on the list is Braderbund's 
Kwikload. | use the Kwikload-1 option 
(load at 36096) for compatibility with 
the next several programs. 


First among many is Multi-Utility 
Wedge, Jim Klitzing's fine multifaceted 
PD boon to programmers. Among 
many other goodies, this utility gives 
you a directory reader that doesn't dis- 
turb BASIC programs in memory, an 
autonumber, renumber, and delete- 
lines utility. It also has an instant UN- 
NEW command and abbreviated (two- 
key) DOS commands including 
SCRATCH, UNSCRATCH, RENAME, 
and so on. There's also a two-key 
screen dump to the printer. On top of 
all this, there's a simple text editor that 
loads and saves sequential files in stan- 
dard ASCII or PET ASCII and can con- 
vert files from one format to the other. 

For most of my writing chores | use 
Gazette’s SpeedScript word processor. 
| use it especially for important or for- 
ma! documents, but if | want to create 
a sequential file in the middle of a pro- 
gramming session, Jim Klitzing's text ed- 
itor lets me do it. | can write a few 
lines; return to BASIC; and, with two key- 
strokes, go back into the text editor 
where the file sits waiting for me. 

Compatible with this programming 
marvel (or with Fast Load if I'm not us- 
ing the wedge) is Gazette’s One- 
Touch Keywords by Mark Niggemann 
(June 1984). With Keywords you can 
use any of the letter keys in combina- 
tion with either the Shift or the Commo- 


Of all the titles in your disk library, there 
probably are several that have risen to the 
top to become the cream of your collec- 
tion. These programs, through their 
speed, reliability, and ease of use, have be- 
come the workhorses that handle the bulk 
of your computing chores. In this month's 
feature article, “One Man's Work Disk,” 
Don Radler talks about his favorites and 
how they make his computer time more effi- 
cient and enjoyable. 

His article started me thinking about my 
own work disk here at COMPUTE and how 
it's evolved. As editor of Gazette, | need a 
good word processor. It probably won't 
come as any surprise that the first tool | put 
on any disk is SpeedScript, COMPUTE’s 
own word processor. (I used it before | start- 
ed working here. | typed in the original ver- 
sion years ago.) 

SpeedScript is a relatively small pro- 
gram. | like that because | can store a lot 
of files on a disk with the word processor 
and keep related material together. 

Whenever we write or edit anything for 
publication, we usually have a specific 
length in mind. Knowing how many words 
an article contains is a big help in this re- 
gard. Reviews, for example, usually run 
750-1000 words. A word processor that 
counts words is an indispensable tool for 
professional writers. | modified my word 


WHAT WORKS AT GAZETTE 


processor to include this feature with Jon- 
athan Bell's Word Count for SpeedScript 
(COMPUTE!, December 1986). 

When rewriting or editing, | often like to 
compare the original with the revised ver- 
sion. This is where Larry Hagney's 
SpeedSwap (COMPUTE, September 1991) 
comes in handy. It modifies SpeedScript 
So you can load two files into memory at 
once and switch between them with a key- 
stroke. Best of all, SpeedSwap lets you cut 
material from one file and paste it into an- 
other. This great utility program makes 
SpeedScript even more useful. 

Articles, program documentation, re- 
views, and columns are usually submitted 
in SpeedScript, ASCII, or Commodore AS- 
Cll, which is also known as PETSCIl. If a 
file is in SpeedSeript format, | load it into 
my 128, edit it, and then save it back to 
disk. From this point, the file must be con- 
verted to true ASCIl for additional editing 
and typesetting on our PC-based local ar- 
ea network. 

| can print a SpeedScript file to disk as 
an ASCII file, but | usually save it first and 
then convert it. For converting, | use Ron 
Carnell’s Sequential File Converter for 
SpeedScript (COMPUTE!’s Gazette, Octo- 
ber 1986). This handy program lets me con- 
vert from SpeedScript to ASCII or PETSCII 
and from PETSCIl to SpeedScript. 


Two other conversion programs | use 
are PET to ASCII by Joel Rubin and ASCII 
to PET by Dave Paul. Rubin's program was 
released in 1983, and Paul's must be near- 
ly as old. These programs aren't fancy, but 
they're fast and accurate. 

| upload files from my 128 to our BBS 
and then download them to my Gateway 
PC and its network. | use a terminal pro- 
gram that | think is called XMODEM Term. 
I'm not sure what it’s called, where it came 
from, or who wrote it because there's no ti- 
tle or author on any of its screens. It con- 
sists of a compiled BASIC file and two ma- 
chine language files. | needed XMODEM 
protocol because COMPUTE's old system 
would accept XMODEM transfers only. Oth- 
er terminal programs are fancier, but this 
gem loads quickly and serves double duty 
as a sequential file reader. 

After | fill a work disk, | store it away for 
safekeeping and create a new one. That's 
when | boot Ross Ouwinga’s Fast File Copi- 
er (COMPUTE!’s Gazette, September 
1986). | tag all the work programs | want— 
including Fast File Copier—and it copies 
them onto a new work disk. 

These are the programs that work for 
me. | am comfortable with them. They 
make me more productive and my work 
easier. Isn't that the whole idea? 

—TOM NETSEL 


G-6 COMPUTE SEPTEMBER 1992 


GAZETTE 
D\SK L/BRARY 


VALUE-PACKED SOFTWARE 
AT AFFORDABLE PRICES 


All Gazette disks are menu-driven for ease of use—and they feature complete 
documentation. Just load and you're ready to go! 


SpeedScript $11.95 
COMPUTE Publications’ most popular program 
ever. Powerful word processing package includes 
SpeedScript for the 64, SpeedScript 128, spelling 
checkers for both 64 and 128 versions, plus an 
additional dozen support programs, including 
mail-merge and word-count utilities. 


Gazette Index $7.95 
Every article and department from Gazette—July 
1983 through December 1989 issues—is indexed: 
features, games, reviews, programming, ‘Bug- 
Swatter,”” “Feedback,” and the other columns. 
Disk features pull-down menus, help screens, 
superfast searching/sorting capabilities, and 
much more. 


Best Gazette Games $9.95 
Best dozen arcade and strategy games ever 
published in Gazette all on one disk. All games for 
Commodore 64. Titles: Crossroads I/: Pandemo- 
nium, Basketball Sam & Ed, Delta War, Heat 
Seeker, Omicron, Powerball, Q-Bird, Trap, Arcade 
Volleyball, Mosaic, Power Poker, and Scorpion II. 


Gazette’s Power Tools $9.95 
Fourteen of the most important utilities for the 

64 ever published in Gazette. For serious users. 
Titles: MefaBASIC, Disk Rapid Transit, Mob Maker, 
Ultrafont+, Quick!, Disk Editor, Basically Music, 
PrintScreen, 1526 PrintScreen, Fast Assembler, 
Smart Disassembler, Comparator, Sprint Il, and 
Turbo Format. 


The GEOS Collection $11.95 
Gazette's best 13 programs for GEOS and GEOS 
128 users. Selection includes utilities, applications, 
and games. Titles: Super Printer Driver, Skeet, File 
Saver, Help Pad, Word Count, Directory Printer, 
Quick Clock, SlideShow, File Retriever, Screen 
Dumper, Font Grabber, GeoPuzzle, and 
GeoConverter. 


128 Classics $11.95 
Thirteen of Gazette’s best 128 programs, including 
utilities, games, and applications. Titles: 
MetaBASIC 128, RAMDisk 128, 80-Column Disk 
Sector Editor, MultiSort, Block Out, Miami Ice, 

The Animals’ Show, Cribbage, XPressCard, Sound 
Designer, Video Slide Show, Math Graphics, and 
3-D BarGrapher. 


LS SE SS A EL A SE SS SS SS ES SS 


* Residents of North Carolina and New York add appropriate sales tax. Canadian orders, add 7% goods and services tax. 


All 6 DISKS FOR ONLY $49.95! 


A $13.00 SAVINGS! 


Name 

Address 

City State = zip 

Amount Method of 

enclosed $ payment © Check or Money Order 


Mail to Gazette Disks (for orders over $20) 
324 W. Wendover Ave., Ste. 200 
Greensboro, NC 27408 
Credit card no. 
Signature (required) 


Daytime phone number 


Exp. date 


** For delivery outside the U.S. or Canada, add $1 for surface mail or $3 for airmail. All orders must be in U.S. funds drawn on a U.S. bank. 


i SPECIAL OFFER! 

B Ali prices include shipping & handling. 

; speedScript D $11.95 
i Gazette Index O $7.95 
i Best Gazette Games O $ 9.95 
i Gazette’s Power Tools Oo $ 9.95 
i The GEOS Collection O $11.95 
y_ 128 Classics O $11.95 
i Special 6-Disk Offer O $49.95 
| Subtotal 

} Tax’ 

i Outside U.S. or Canada** 

' Total 

i 

L 


i 
] 
i 
i 
i 
i 
I 
O VISA or MasterCard ' 
i 
i 
I 
4 
i 
i 
a 
i 


tS mE OSS NY SB GS OS ESE EY YO A a es es wld 


dore key to print BASIC keywords to 
the screen. Once you've learned the 
52-word language, it speeds up writing 
and entering programs enormously. 
Now I'm spoiled—I wouldn't want to 
type in a program without it. 

Whenever | type in a program from 
Gazette, | always use The Automatic 
Proofreader. It's a handy program that 
helps me avoid typing errors. These 
three utilities are compatible with Proof- 
reader, which | enter after the first 
three are installed. I've found that 
these utilities, when used with Jim Klitz- 
ing's autonumbering utility, make typ- 
ing Gazette programs almost fun. 


Avoid Typos 
Whenever | type, | make errors. | do 
have a couple of ways to avoid the slow- 
downs caused by typing blunders. 

| have two Cardco numeric keypads 
that | picked up somewhere along the 
line. Either one will plug into joystick 
port 2. On one, | pasted data-entry let- 
ters over the keys, and on the other | 
put the MLX keypad letters. | put 
Cardco's KBASIC program on the 
work disk, along with the sequential 
files it lets me create for each of these 
conversions. The MLX entry pad is a re- 
al timesaver, virtually wiping out the ty- 
pos made by my fumbling fingers. 
With two keys devoted to commas, the 


data entry pad almost eliminates the pe- 
riod-instead-of-comma hangup that 
Plagues many data-statement entries. 


Three Computers 
Finally, there is Triple 64 by Feeman 
Ng, from the April 1985 issue of Ga- 
Zette. This little (seven-line) program di- 
vides the 64’s memory into three inde- 
pendent 12K sections, each accessi- 
ble with SYS 40004 followed by the 
number 1, 2, or 3. Within these sec- 
tions of memory, different modules of a 
program can be entered and tested, or 
three totally different programs can be 
tried out. It's like having three superfast 
12K disk drives at your disposal and 
not unlike having a RAM disk. | use 
Hubert Cross's 64 RAMdisk from the Ga- 
Zette 1988 Special Issue for several pur- 
poses, but not for ordinary program- 
entering or programming sessions. 
Triple 64 works with Kwikload and 
the Klitzing wedge installed. Without 
that combination, it works with the 
Fast Load cartridge enabled. In either 
case, it installs itself where it fits and 
gives you the correct SYS address to 
toggle it on and off. 


My Way 

If you'd like to try out the Gazette pro- 
gram-entry setups, I've found the follow- 
ing combinations work well for me. If 


you're going to enter BASIC program 
listings from the magazine, run 
Kwikload-1, then Jim Klitzing's wedge, 
then Keyword, and finally Gazette's 
Proofreader. 

When you want to type in machine 
language listings using MLX, run 
Kwikload-1 and then KBASIC 
(Cardco's keypad software); then call 
up the keypad modification for MLX; 
and, finally, load and run MLX itself. 

By looking over the collection of pro- 
grams you've downloaded or typed 
from Gazette or other magazines, you 
can probably come up with some 
gems of your own that you may have 
overlooked. By combining your most fre- 
quently used programs on one disk, 
you can customize a work disk that 
will let you work more efficiently. 

You may have several work disks on 
hand, depending on your computer ac- 
tivity at any one time. While my work 
disk suits my programming needs, a 
computer artist would have an entirely 
different set of programs and utilities, 
Musical programmers, writers, and 
game designers would have their own 
customized disks. 

So take a look at your files, your us- 
er group library, or local BBS offerings 
and put together your own custom 
work disk. It will make your computer 
time much more productive. ao 


“Someone's been programming my computer, too!” 


G-8 COMPUTE SEPTEMBER 1992 


COMPUTER 
205-739-0040 


4 
C AUTHORIZED COMMODORE SERVICE CENTER 


MOTHERBOARD REPAIR (Send Board Only) 

BANIGAT aa iuheoieteee $90.00: T2O ASTM acacusercotttnogsccd $59.00 
COMMODORE DISK DRIVES COMMODORE COMPUTERS 
1541 C-64.... $4! 


MSD, 1571 : C-128. 

COMMODORE MONITORS SX-64 Portabl 

1701, 1802, 1084, COMMODORE PRINTERS 

D7OZET SCZ S srssraarccassccersexsen $85.00 $75.00 


Amiga Call for price 


'!! FAST TURNAROUND !!! 


All parts and labor included. $7.50 shipping. $15.00 APO and business equipment. 


WE BUY ALIVE CABLES AND MISC. PARTS 
C64 $ CALL | REG6 PIN DIN $ 4.45 | 901 ROMS $11.95 
1541 NEWT CALL | 12'6 PIN DIN 6.95 | STR54041 12.50 
1541 ALPS CALL | 18'6 PIN DIN 7.95 | 41464 9.95 
SX64 CALL | MONITOR CABLES 4.45 | 6560 PULLS 10,00 
1571, C128 CALL | TV SWITCHES 2.50 | 74LS629 4.95 
1526/802 CALL | COMMODORE 82S100 12.95 
MUST BE COMPLETE KEYBOARD CALL | 325302 9.95 
S$CALL ON DEAD DSDD-Disk 25 for 11.95 | 325572 9.50 
EQUIPMENT 8701 6.85 
8502 9.00 
POWER SUPPLIES COMPUTER EQUIPMENT | 6526 12.50 
Ccé4 $24.95 | C64 REFR $ 99.00 | 6522 4.50 
C128 49.95 | C128 REFR 219.00 | 6520 3.85 
1541, 1581 36.75 | 1702 CBM 169.00 | 6532 6.29 
AMIGA 500 75.95 | CBM 1541 ALPS 159.00 | 6502 2.85 
AMIGA 1000 134.95 | STARNX1000C 199.00 | 6510 9.95 
AMIGA 2000 141.98 | EPSON INTERFACE 53.95 | 6581 12.50 
6567 19.95 
4164 2.75 
COMPUTER SHOPPE OF ALABAMA | ;,.; 16.85 

1310 2nd Ave. NW, Suite C 128 UPGRADE i 
Cullman, AL 35055 
g ROMS 23.65 
DEALERS SEND FOR PRICE SUBJECT TO $25.00 MIN ORDER 
PARTS CATALOG CHANGE 


Circle Reader Service Number 178 


Yes, save time and money! Subscribe to the Gazette 
Disk and get all the exciting, fun-filled Gazette pro- 
grams for your Commodore 64 or 128—already on 
disk! 

Subscribe today, and month after month you'll 
get all the latest, most challenging, and fascinating 
programs published in the corresponding issue of 
COMPUTE. 

New on the Gazette Disk! In addition to the 
programs that appear in the magazine, you'll also 
get outstanding bonus programs. These programs, 
which are often too large to offer as type-ins, are 
available only on disk—they appear nowhere else. 
As another Gazette Disk extra, check out 


fo oI 
ALL ¥ 
CmD DRIVES 

a § ts 


FUN GRAPHICS mnAl 
HI-RES SCREENS 


orsk 
UPPORTS IMPORTING GRAPHICS AND 
NY POPULAR PROGRAMS INCLUDING: 
HANDYSCANNER 64 
conPy ES 


0 v 
APTURED SIMPLY BY RESETTING 
F MACHINE, 


GEOS SCREENS 
COMPUTER THEN 


Fem CLIP ART VOL. 

FGM FONT DISK OVER 90 FONTS IN FGM FORMAT 

C=64 KEYBOARD TEMPLATE NAKE vOUR OWN OVERLAYS 

C=128 KEYBOARD TEMPLATE HAKE vouR OWN OVERLAY 
DAILY, WEEKLY, MONTH 


S FOR THE FOLLOWING PROGRAMS a 
CMD’S HARD ORIVE, RAMLINK, RAMDRIVE JIFFY DOS COMMAXDS 
SHAP SHOT 5S ACTION REPLAY 4&5 EPYX FAST LOAD 
BUSINESS FORM SHOP CALC STAR BASIC 55Qer 
ROCK’S ASSEMBLER (S50 THE FUN GRAPHICS MACHINE i 
c64,C128,SX-64) OR C64 1S SHIPPED 


(503)-673-2234 


ADD $3.50 FOR S/H PER ORDER 
IF ONLY ORDERING OVERLAYS THEN S/H 1S $2,00_ PER ORDER Jey 


“Gazette Gallery,” where each month we present the 
very best in original 64 and 128 artwork. 

So don’t waste another moment. Subscribe to- 
day to COMPUTE's Gazette Disk and get 12 issues 
for only $49.95. You save almost 60% off the single- 
issue price. Clip or photocopy and mail completed 
coupon today. 

Individual issues of the disk are available for 
$9.95 (plus $2.00 shipping and handling) by writing 
to COMPUTE, 324 West Wendover Avenue, Suite 
200, Greensboro, North Carolina 27408. 


i] 
| 
' YES! Start my one-year subscription 
| to COMPUTE’s Gazette Disk right away 
| for only $49.95.* 
; Oo Payment enclosed (check or money order) 
| Charge OMasterCard O Visa 
| 
1 Acct. No. Exp. Date 
Signature —. 
Name 
| Address 
ty 
State/ ZIP/ 
| Province _____________ Postal Code 
4 Mail to COMPUTE’s Gazette Disk, P.O. Box 3250, Harlan, IA 51593-2430 


* Residents of NC and NY, please add appropriate sales tax for your area. Canadian 
orders, add 7% goods and services tax. 


REVIEWS 


SUPRA 2400 
MODEM 


Supra 2400 is an external 
RS-232 modem that | can 
recommend. It's been 
around for several years, 
long enough for individuals, 
businesses, and BBSs to 
shake out any hardware 
bugs that it might have had. 

It's smaller than a Beta vid- 
eotape, is solidly built, and 
has eight LEDs that indicate 
the various modem opera- 
tions. Supra 2400 is a Hay- 
es-compatible smart mo- 
dem that supports AT com- 
mands, extended & com- 
mands, and result codes. It 
has several internal registers 
for controlling modem func- 
tions. The modem works 
well with most popular share- 
ware and commercial tele- 
communications programs, 
BellTerm, Bobs Term, No- 
vaTerm, and Elite Term be- 
ing some of the readily avail- 
able ones. 

Supra 2400 is cool run- 
ning, which certainly adds 
to its ability to transmit data 
for long stretches of time 
without errors, At 2400 bps, 
transmission is obviously 
more likely to be affected by 
phone-line noise than it 
would at lower baud rates. 
Supra 2400 uses adaptive 
equalization and impedance 
matching like most other mo- 
dems do and gives you 
long sessions of error-free 
transmissions. 

Supra 2400 supports sev- 
eral modem tests. A power- 
on test automatically 
checks out the modem eve- 
ry time it's turned on. There 
are also manual and self-run- 
ning analog and digital 
loopback tests in which the 
modem generates and 
sends signals to itself to 
check that everything is func- 
tioning. One interesting fea- 
ture of the Supra 2400 is its 


G-10 


nonvolatile memory. Even af- 
ter the power is turned off, 
the modem will store one tele- 
phone number. While this fea- 
ture is welcome, it's over- 
shadowed by the fact that 
many other terminal pro- 
grams support their own 
phone directories and store 
dozens of numbers. 


used to be that whenever | 
turned on my computer, my 
old modem would scream 
like a cat in heat; now 
peace reigns with my Supra 
2400. If | want to hear a call 
in progress without insulting 
my ears, | can control the vol- 
ume of the modem's speak- 
er via the software. Supra 


Supra 2400 is a cool-running external modem that can give you 
long sessions or error-free transmissions. : 


There's an-error in the Su- 
pra manual regarding the 
store feature. The correct 
command sequence for stor- 
ing a telephone number is 
AT&Z= followed by the dial 
type (T for tone or P for 
pulse) and the telephone 
number, as in AT&Z = 
75551234. The equal sign 
character is missing from 
the documentation in the 
manual. This supposedly 
has been corrected by an 
addendum, but the adden- 
dum wasn't included with 
my modem. However, using 
the AT&W command for stor- 
ing any modem settings is a 
more useful application of 
the nonvolatile memory. The 
settings with AT&W load au- 
tomatically whenever the mo- 
dem is turned on, which 
saves you the trouble of hav- 
ing to reach for the manual 
or the supplied reference 
card at each session. 

| particularly like Supra 
2400's power switch. It 


COMPUTE SEPTEMBER 1992 


2400 also has its own inde- 
pendent power supply. Now 
it takes me longer to warm 
my coffee on my 64's power 
supply, but | hardly call that 
an inconvenience! 

The Supra company sells 
an RS-232 interface for the 
64 called Peak Modem Inter- 
face ($39.95); any similar in- 
terface will work with any RS- 
232 modem. The least expen- 
sive commercial model is 
the Com-Modem adapter 
($19.95) from Aprotek. You 
could even build an inter- 
face with the help of the de- 
signs and descriptions avail- 
able on most online servic- 
es. If you want to connect 
your Supra through the Com- 
Modem adapter, make sure 
that you order an RS-232 
straight-through DTE cable 
with male DB25P (25 pins) 
connectors at both ends. 

The documentation for 
the Supra modem is compre- 
hensive, although somewhat 
technical in places for some 


users. However, a good tel- 
ecommunications program 
takes care of the technical 
aspects of using a modem, 
and you never need to both- 
er with all those AT and & 
commands and what regis- 
ters do. Troubleshooting is 
very well covered. And the 
best news is that Supra 
2400 has a street price of 
less than $100 (cheaper by 
mail order) and comes with 
a five-year limited warranty. 
RANJAN BOSE 


Commodore 64 and 128—$119,95 


SUPRA 

7101 Supra Dr. 
Albany, OR 97321 
(503) 967-9075 


Circle Reader Service Number 341 


PANASONIC 
KX-P2123 


Despite the progress made 
by 9-pin dot-matrix printers 
in improving their NLQ (Near 
Letter Quality) fonts, their out- 
put just doesn't match the 
quality of a 24-pin printer. A 
24-pin printhead essentially 
has three offset columns of 
8 pins each. By printing 
each line of characters in a 
single pass, it not only prints 
faster than its 9-pin ancestor, 
it also achieves smoother 
curves and diagonals on let- 
ters such as O, C, Vand Y¥ 

The downside is that most 
24-pin machines are noisy. 
That's because they have 
more pins and they print fast- 
er. A typical 9-pin character 
uses a matrix of 18 x 18 
dots, whereas a 24-pin char- 
acter uses a matrix of 30 x 
24 dots and gets printed at 
roughly twice the 9-pin 
speed. Most 24-pin printers 
sound like a dentist's drill 
and preclude any conversa- 
tion nearby. Anything that 
could be done to make them 
quieter would be appreciat- 
ed. Enter the new line of 


PUMP UP 


YOUR PRODUCTIVITY! 


Harness the potential of your, The Garena sorennics 
64 and 128 with these nase 


Do it all with Commodore 

rf | graphics! 
powe U pr ogr ams. Here's what's on it— 
Starburst Graphics, 

Get more work out of your 64 and 128 Screen Designer 128, 
with these two new disk products from 128 Graphics Compactor, 


COMPUTE's Gazette — the 1992 
Best of Gazette Utilities, and 

the Gazette Graphics Grab 
Bag! 

The 1992 Best of 
Gazette Utilities 

Seize control of your operating 
system and your world! 


Here's what's on it-MetaBASIC 64, 
MetaBASIC 128, Quick, Sprint Il, 
Ultrafont+, RAMDisk 64, RAMDisk 128, 
BASSEM, SciCalc 64, List Formatter, 
MegaSqueeze. ; 


64 Animator, VDC Graphics, 
Dissolve 128, Super Slideshow, 
128 Animator, 1526 PrintScreen, 
Supratechnic, Medium-Resolution 
Graphics, Screen Maker, GAS!64— 
Special Edition, GAS!128—Special 


ORDER 
THEM 
TODAY! 


Extend Your Computer Power With This Powerful Software! 


ee ee ee eH EE EE ee OOO 


aa ___ Check or Money Order _ MasterCard __ VISA | 
| want to pump up my productivity! Please send me the | 
@ disks checked below at $11.95 each. Credit CardNo,__ EX Dat | 
ignat 
| The 1992 Best of Gazette Utilities Stonature (Required) 
| __ The Gazette Graphics Grab Bag Daytime Telephone No. 
_— Subtotal Name 
___ Sales Tax (Residents of NC and NY please add appropriate sales tax for your 
area. Canadian orders, add 7% goods and services tax.) Address 
__ Shipping and Handling ($2.00 U.S. and Canada, $3.00 surface mail, $5.00 City 
airmail per disk.) 
| __ Total Enclosed State/Province ZIP/Postal Code 


Mail this coupon to COMPUTE's 1991 Utilities, 324 West Wendover Ave., Ste. 200, 
MasterCard and VISA accepted on orders with subtotal over $20. Greensboro, NC 27408. ie 


Gazette 
Index 


Everything’s included! 
Features, games, reviews, 
education/home applications, 
programming, bugswatter, 
feedback, and columns! 


A superb interface includes pull-down 
menus, help screens, and keyboard, 


joystick, or mouse control. Features in- 


clude super-fast searching and sorting 
capabilities. An options screen allows 
you to choose text colors, drive num- 
ber, and input device. And there's full 
documentation on disk. 


Choose from three modes of opera- 
tion—browse for quick scanning, view 
for detailed information and descrip- 
tions, and edit for adding items from 
upcoming issues—and print to any 
printer. There’s even a turbo-load op- 
tion for maximum disk-access speed. 


ORDER YOUR 
1991 GAZETTE 
INDEX TODAY! 


(MasterCard and Visa accepted on 
orders with subtotal over $20.) 


To order, send $7.95 per disk, the 
quantity of disks ordered, check or 
money order,* your name and com- 
plete street address: 


1991 Gazette Index 

324 West Wendover Avenue 
Suite 200 

Greensboro, NC 27408 

“Please add $2 shipping & handling ($5 foreign) for 
each disk (residents of NC, NJ, NY please add appli- 
cable sales tax; Canadian orders, add 7% goods and 
services tax). 


All payments must be in U.S. funds. Please allow 4 
weeks for delivery. 


REVIEWS 


Panasonic machines. 

Panasonic printers have always 
been known for their letter quality (LQ) 
fonts, and now it's comforting to see 
that their new product line has been 
made quieter as well. The new line’s lat- 
est offering includes the 9-pin KX- 
P2180, the wide-carriage 24-pin KX- 
P2624, and the 24-pin KX-P2123. The 
KX-P2123 should be especially attrac- 
tive to most Commodore owners. 

Not only is the KX-P2123 quieter 
than earlier models, it also has several 
new features with hardly any increase 
in price. The new model has a 14K buff- 
er, compared to 10K on the KX-P1123. 
The new buffer can hold approximately 
seven double-spaced pages of text! 
Adding a Xetec Super Graphics ur. in- 
terface and a LQ speed of 40 charac- 
ters per second means that your com- 
puter will become available about six 
minutes before the printer spills out the 
last line. 

The earlier Panasonic fonts (Pica, 
Elite, and Micron in draft quality; Couri- 
er, Boldface PS, Prestige, and Script in 
letter quality) are all there, but some 
new ones have been added. There are 
lightweight Roman, medium-dark Sans 
Serif, and a (slower but darker and sharp- 
er) Super Letter Quality Roman font (not 
available in IBM emulation). For 64 us- 
ers, resident LQ fonts such as these are 
vital. Although GEOS offers a variety of 
fonts, they don't look professional. It's 
nice to have a printer with a variety of 
crisp internal LQ fonts. 

The printing speed of the KX-P2123 
is said to be as fast as that of the KX- 
P1123, but the real improvement is in 
the significantly lower noise level. 
Sound is measured on a log scale and 
each reduction by 3 dB (decibels) rep- 
resents a 50-percent reduction in vol- 
ume. At 8.5 dB quieter than its pred- 
ecessor, the KX-P2123 is about one- 
eighth as loud as the KX-P1123. This 
noise reduction has been achieved by 
adding thicker and bigger covers, 
foam blocks, and technology that 
Panasonic calls Quiet Touch. Panason- 
ic has found that noise is reduced 
when the pins are fired in a random man- 
ner, rather than in the sequential man- 
ner used by conventional printers. 

The KX-P2123 can load fanfold pa- 
per either from the rear (tractor push) 
or the bottom (tractor pull). Single 
sheets can be fed from the top, and an 
optional sheet feeder is available. Sin- 
gle sheets or envelopes can be used af- 
ter first “parking” the fanfold paper. A 
“zero-inch tear off” is a convenient pa- 
per-saving feature that advances a re- 
cently printed sheet of fanfold for tear- 


ing and then retracts the blank sheet 
back to printing position. The KX-P2123 
becomes a seven-color printer by add- 
ing a relatively inexpensive color car- 
tridge and motor option. 

On the negative side, the KX-P2123 
retains its predecessor's somewhat 
convoluted LED matrix front panel for set- 
ting a multitude of printer options such 
as the font, pitch, form length, quiet 
mode, margins, and macros. It does 
get easier once you work with it a 
while, but, initially, keep a bottle of 
aspirin and the manual handy. 

The KX-P2123 emulates Epson 
LQ860 and IBM Proprinter X24E. 
GEOS users will be happy to note that 
the drivers for KX-P1124 (and also for 
the 24-pin Epson) work with this print- 
er. Programs that allow you to define 
printer configuration files, such as The 
Write Stuff, also work with a minor effort. 
If your program supports only older Com- 
modore printers, however, then you're 
limited to using the interface-based 
Commodore fonts that generally don't 
use the higher resolution of 24-pin print- 
ers. The Xetec Super Graphics ur. 
(ROM version 1.3 and 1.46) works well 
in transparent mode as well as in Su- 
pergraphix and 1525 emulation 
modes. For 64 users, the primary advan- 
tage of using a 24-pin printer would 
have to be in text-based applications. 
You can easily churn out a professional- 
looking document with a KX-P2123. 

Most 64 graphic programs don't ex- 
ploit the highest density available on 9- 
pin printers (216 dpi); therefore, they 
can't use the higher (360 dpi) resolution 
of 24-pin printers. The 24-pin's finer dot 
size and arguably better linearity (align- 
ment of dots), however, might improve 
the appearance of the hardcopy. 

Although the nylon ribbons that are 
universally used by dot-matrix printers 
are economical and satisfactory, it's a 
pity that Panasonic and other manufac- 
turers don't produce carbon film rib- 
bons. These would offer a truly high- 
quality output option for those who want 
their documents to look their best. A con- 
ventional nylon ribbon actually reduces 
the apparent sharpness of a 24-pin print- 
er. This can be quickly demonstrated if 
you print a few lines (without the ribbon) 
through a quality sheet of carbon paper 
placed over the printer paper. 

Never print without the ribbon for 
more than a few lines, though. In addi- 
tion to ink, ribbons carry lubricants that 
help cool the printhead and protect it 
from damage. 

| found that, when using any of the 
double-pass printing modes, the output 
is better if the curved clear-plastic top 
of the removable pull-roller on top of the 
platen isn't clamped down. This is a 
gear-driven assembly that normally 


pulls the paper and keeps it taut. When 
locked down, it tends to pull the paper 
a touch too vigorously, resulting in 
some characters having a dotted or bro- 
en appearance. The pull is gentler, yet 
adequate, when the curved top is rest- 
ing on the paper, not down all the way. 

Before using the tear-off feature or fan- 
‘old parking or before loading for the 
irst time, remember to set the top-of- 
orm option. The manual neglects to 
mention this. 

One way to reduce noise even fur- 
her with this printer is to adjust the print- 
head gap with the supplied lever. The 
chatter appreciably diminishes as you 
move the printhead closer to the paper 
(subject to paper thickness). 

If your computer system is used for 
any text-based application and you 
need good quality professional print- 
outs but cannot afford or justify the pur- 
chase of a laser printer, then the color- 
upgradable Panasonic KX-P2123 with 
its two-year warranty is a reliable, effi- 
cient, and economical alternative. 
RANJAN BOSE 


Commodore 64 and 128, printer interface re- 
quired—$419.95 


PANASONIC 

2 Panasonic Way 
Secaucus, NJ 07094 
(201) 348-7000 


Circle Reader Service Number 342 


NOVATERM 9.3 


NovaTerm is a powerful and well-de- 
signed telecommunications program 
that works well with Supra 2400 or any 
other modem. In addition to the 64's 
standard 40-column display, No- 
vaTerm supports an 80-column ANSI 
(or VT 52/102) graphics screen. Nitpick- 
ers will always find fault with the clarity 
of an 80-column display on a 64, but at 
least that option exists. The program is 
easy to use and provides several pro- 
tocols, XMODEM (CRC and check- 
sum), YMODEM, Punter, and others, to 
ensure error-free transmission of data. 

NovaTerm has a smallish buffer 
(8K), but you can automatically direct 
any buffer overflow to disk. Even if 
your system is equipped with DOS 
speed-up utilities, Commodore drives 
can slow down the data stream if you 
use large-block (1024 bytes) transfer 
protocols such as XMODEM 1K or 
YMODEM. NovaTerm supports RAM 
expansion units (REU) and can con- 
siderably enhance your system's effi- 
ciency. If your system doesn’t have an 
REU and the file to be uploaded or 
downloaded is smaller than 8192 
bytes, then the NovaTerm buffer (RAM 
disk) can be used to achieve the 
same end. The program works well 


Calc Il makes your math work breeze | of data * Uppercase, lowercase 


lowercase and 

— whether i's a mortgage calculation, | Commodore graptics all available * Bar 

budgeting, orkeeping sports statistics. | graphs on-screen with text * Over two 

a Cc (Orusaiit for your non-math chores like | dozen functions, including LOOKUP, 


phone numbers ormaking a nel IF, RND, SIN & FIX * 240 rows by 
to 


The Fastest sows and sped gets resus toe | wor ‘worksheet setup * Easy text entry. 
Spreadsheet pe peers itr! Guide and disk with Calc Il, two utilty 


column 
Commodore 64 cxsaing gs aeperety egustable| andhencia rou 
PANKHURST PROGRAMMING Dept.G « Box 49135 + Montreal * Quebec * Canada * H1N 376 


Circle Reader Service Number 152 


LOTSA DISKS! THE BEST in 64/128 PD. 
GEOS, Graphics, Clipart, Demos, Games, Bible, 
SID/MIDI, Educational, Basic 8 
NEW! Graphics Scanning Service 
Send stamp for FREE catalog or $2 for sample disk. 


Diskoveries 
PO Box 9153, Waukegan, IL 60079 


in PD Software 


Circle Reader Service Number 190 


64/128 PUBLIC DOMAIN SOFTWARE ~ |, 
REQUEST FREE CATALOG or send $2 for sample disk and catalog (RE- 
FUNDABLE). Categories include education, utllities, games, business, 
PRINT SHOP graphics, pre-tested programs and more. Rent for 75¢ or 
buy as low as $1.00 per disk side or for 80¢ for 70 or more. $20 order 
gets 4 free disks of your choice. 

NEXT DAY SHIPPING! SINCE 1986 


fn) CALOKE INDUSTRIES (Dept. GK)  =EE 
PO BOX 18477, RAYTOWN, MO 64133 


Circle Reader Service Number 255 


KeyDOS ROM Version 2 is here! 


The KeyDOS ROM is a chip for the empty socket inside your C128 that adds more than 40 
powerful features. KeyDOS is available instantly as soon as you switch on your 128! 
KeyDOS i is loaded with useful tools to simplify file access on multiple drive systems without typ- 
ing file names—all major DOS functions included. Select multiple files for copying, viewing, 
printing, renaming or scratching. ASCIVCBM/Screen code converter. Full support for 1581 
subdirectories. Built-in RAMDOS for REUs up to 2MB. New GEOS SupeRBoot. 

Alarm clock. Disk editor. Powerful debugger. 

Only $32.50. Satisfaction Guaranteed! Write for more information. 
Enhance your system with the speed and convenience that KeyDOS provides! 


Antigrav Toolkit, PO Box 1074, Cambridge, MA 02142 
Shipping outside of US, Canada and Mexico add $3 


Circle Reader Service Number 155 


Commodore Accessories & Necessities 


Ribbons! M3 Mouse 
MPS 801 - 802 - 803 - 1525 - 1526 - 1000 - Modems Visa 
1200 - 1230 - 1250 Joysticks * MC or 
Commodore Printer (Comm. & PC Comp.) Icon Controller UPS 
C 64 C Computer * 1541-II Disk Drive Cables cop 


1802 Monitor Power Supply 


SOFTWARE: Educational - Productive - Fun - Commodore-Amiga Authorized 
Dealer & Service Center - 24-Hour Tumaround on Repairs - CALL for PRICING 


ES ELECTRO-TECH ELECTRONICS 6 
677 East Main Street + Ventura,CA 93001 + 805-648-5417 


Circle Reader Service Number 148 


SEPTEMBER 1992 COMPUTE 


SOFTWARE 


CLOSEOUTS 


For Commodore 64 & 128 


‘STRATEGIC SIMULATIONS INC. (SSI) ‘$S19.S0EACH 
Typhoon of Steel, War of the Lance, Curse of 
Azure Bonds, Pool of Radiance, Countdown to 
Doomsday, Battles of Napoleon, Tony LaRussa 
Baseball, B-24, Roadwar 2000, Hillsfar, First 
over Germany, Heroes of Lance, Pro-TourGolt, 
Battle for Normandy, Dragons of Flame or 
Dragonstrike. 


MICROPROSE& MICROPLAY ..... oe SU4.SOEACH 
Acrojet, Destroyer Escort, Netherworld, Rick 
Dangerous, Top Gunner, Xenophobe, Crusadein 
Europe, Decision in the Desert, Spitfire Ace, 
Hellcat Ace, Solo Flight, Silent Service, Conflict 
in Vietnam, Stunt Track Racer, 3D Pool, F-15 
Strike Eagle, Airborne Ranger, or Pirates! 


‘ACCOLADE BARGAINS 
PSI5 Trading Co., Law 
Killed Until Dead, Hardball, Dambusters, Ace of 
Aces, Fight Night, or Jet Boys. 


TATOPREMIUMTITLES ...... ossnse $14.50 EACH 
Alcon, Arkanoid, Arkanoid |, Bubble Bobble, Qix, 
Operation Wolf, Rambo Ill, Rastan or Renegade. 


ACTIVISION BARGAINS .... .- $5.00 EACH 
Toy Bizarre, Mindshadow, H.E.R.0., Crossbow 
Championship Baseball, Zenji or Powerdrift. 


ACTIVISION PREMIUM TITLES. 

Gee Bee Air Rally, Aliens, 

Maniac Mansion, Beyond Dark Castle, Titanic, 
Space Shuttle, Christmas Model Kit, Mondu's 
Fight Palace, or Die Hard. 

MANDSCAPELIQUDATION.. 


Mastertype/Writer Bundle, re SAT, 
Shinobi, Gauntlet 2, Bop'n Rumble, ColorMe, 
Combat Course, Into the Eagle's Nest, Indoor 
Sports, Boston Computer Diet, Songwriter, 
Thunderblade, Golden Oldies. 


COMPSULT 
P.O. BOX 5160 
SAN LUIS OBISPO 
CA 93403-5160 


$10.00EACH 
Under Fire, MacBeth, Wooden Ships & Iron Men, 
Ripper!, Tsushima, Stocks & Bonds, Dr. Ruth, 
Parthian Kings, Jupiter Mission 1999,TAC.., 
lLegionnaire, Tournament Golf, Maxwell Manor, 
Statis-Pro Baseball, Gulf Strike, Darkhorn, 
|Guderian, Mission on Thunderhead, Panzers East, 
ISuper Sunday, or Panzer Jagd. 
INFOCOM BARGAINS 
iStarcross, Suspet 
MORE GREATDEALS!!!! 
Printed Wordor The Tool, by Valueware 
Partner 128 (cartridge forC/128 only), 

byTimeworks 

 Ghostoriter 128, by Hesware (C/12Boniy!) 


. $S.00EACH 
}, or Deadline. 


. JAssembler, byCommodore ........ 


Pet Emulator, by Commodore 
Entertainer or Educator, by Valueware 
Tri-Math or Turtle Toyland, by HesWare . 
Attack ofthe Mutant Camels (cartridge), by HES $3.50 


VISA/MC ORDERS CALL TOLL-FREE 


1-800-676-6616 
Credit Card Orders Only 1!!! ($25 minimum) 


TO ORDER: Send check or money order, including 
shippingcharges o1$5 for U.S.A, $éfor Canada, $12 
others. California addressesmust include 7.25% sales 
tax. Toreceive our complete catalog of over 2,000 items 
for all computer types, send $2 in cash of postage 
stamps. The catalogis FREE with any order. Tocheckfor 
anitem not listed here, cal (B05) 544-6616. 


WE ALSO CARRY LOTS OF 
SOFTWARE FOR IBM, APPLE, MAC, 
AMIGA, ATARI & MORE! 


Circle Reader Service Number 181 


8 BIT 
PO BOX 542 
LINDENHURST NY 11757-0542 


NOW BRINGING YOU GREAT PRICES ON 
COMMERCIAL SOFTWARE TOO! 


6PACSETS 
EACH SET $5.00 
1: ASST. (StarTrek+) 
2: ADULT IMAGES 
3: EDUCATIONAL 
4: GAMES (Tetris +) 
5: DEMOS/MOVIES 
6: PRODUCTIVITY 


PARADRO: 
$5.00 


MANY ITEMS ARE CLOSEOUTS, 
AMOUNT OF STOCK IS LIMITED! 
Add $1.00 shipping per item ordered*U.S. Fands Only! 
SORRY NOC.O.D.’s OR CREDIT CARD ORDERS 
FOR A FREE COPY OF OUR CATALOG, CALL: 
(516)-957-1110 MONDAY - FRIDAY 10am to 5pm EST 


Circle Reader Service Number 162 


with JiffyDOS. While a CPU 
accelerator such as Schned- 
ler System's 4-MHz Turbo 
Master CPU cannot be ex- 
pected to increase the actu- 
al telecommunications 
speed (after all, 2400 bps is 
2400 bps!), it does reduce 
the processing time re- 
quired by the computer. 
This becomes apparent 
when you notice the faster 
scrolling and display. Unfor- 
tunately, Turbo Master isn’t 
fully compatible with No- 
vaTerm. YMODEM doesn't 
work when you're saving a 
file to the disk with the CPU 
running at 4 MHz. Saving to 
a buffer does work, howev- 
er. XMODEM works well with- 
out significant improvement 
over native 1-MHz mode. Al- 
so, during half-duplex trans- 
mission, with the modem ech- 
oing characters that you 
type, the characters appear 
as garbage on your screen, 
but they're transmitted cor- 
rectly. This can be confus- 
ing, so I'd recommend disa- 
bling the cartridge when us- 
ing NovaTerm. 

NovaTerm has the de- 


sired complement of file edi- 
tors and autorun scripts. By 
using the latter, your comput- 
er can go online at a certain 
time, collect messages, 
download or send files, and 
hang up without your having 
to baby-sit the process! 

Aprotek distributes No- 
vaTerm as shareware with 
its modems. You can also 
download the program from 
Aprotek’s BBS at (503) 582- 
1225. Callers can download 
the documentation and the 
related files on the first call. 
NovatTerm is also available 
on QuantumLink and GEnie. 

Since this program is 
shareware, you're invited to 
try it at no charge. If you de- 
cide it's useful, send author 
Nick Rossi a donation of at 
least $20. Version 9.4 
should be available by the 
time this review appears. 
RANJAN BOSE 


Commodore 64 and 128—$20 (re- 
quested) 


NICK ROSSI 
427 Avenue J 
Snohomish, WA 98290 


Circle Reader Service Number 343 


BUG-SWATTER 


Due to an error that oc- 
curred during printing, a por- 
tion of the documentation of 
Revelation (August 1992) 
was omitted. Here is the 
missing text, beginning with 
the third paragraph. 

This is only a simple exam- 
ple; the technique opens up 
myriad possibilities for the 
programmer. For example, 
the technique can be extend- 


ed to larger, expanded 
sprites occupying 21 x 21 pix- 
els to reveal larger blocks of 
text or user-defined charac- 
ters. Sprites can be used in 
Conjunction to reveal whole 
sections of the screen dis- 
play. More complex tech- 
niques can be produced by 
using sprites which aren't 
completely solid but are pat- 
terned or shaped. 0 


Realistic Nuclear Attack Sub Simulation 


C64 oF 128 In 64 


Missions 


Under The Arctic Ice. 


Row rae ty in The North Sea. 

ussian Typhoons in 

Requires C64 GEOS 1.3 or 20 WRG 
$19.95 Check or Money Order 


VMC Software 
Cambria Hts. 


PO Box 326 


NY 11411 SONV CFC! 


Circle Reader Service Number 171 


Someone tosandey ou. -B0O-621-0379 


(In Illinois 1-800-572-6037) 


FEEDBACK 


64 to IBM Format 

| have two 64s and two 1541 
drives. | have been using 
them for about three years. 
During that time, I’ve built up 
a large collection of programs 
and SpeedScript files, which 
includes hundreds of recipes. 
Now I've purchased an IBM 
compatible. What do | need 
to convert these files so | can 
use them on my IBM? 


CAMERON C. STEELE 
SPENCER, IN 


The first problem is the one of 
transferring your 64 files to 
the IBM. This transfer can be 
accomplished by using termi- 
nal software and modems to 
upload and download the 
files to a bulletin board or 
even to move them directly be- 
tween the two computers. 

If you have access to a 
1571 drive, there are several 
utilities, such as SOGWAP's 
Big Blue Reader, that will 
copy a file from a Commo- 
dore-type disk and write to an 
IBM disk. 

This process works quite 
well when transferring text 
files. Although the 64 uses its 
own set of characters, PET- 
SCIl, as opposed to IBM's AS- 
Cll, converting between the 
two is fairly easy to do. With 
word processors such as 
SpeedScript, you can save 
files as ASCII or convert them 
with utilities such as Sequen- 
tial File Converter. Special 
codes for centering and under- 
lining may be a problem, but 
these can be stripped out of 
the text before the file is con- 
verted to ASCIl. 

There's a real problem, how- 
ever, if you wani to convert 
programs that will actually run 
on the IBM. BASIC programs 
are tokenized, which means 
that keywords such as IF, 
THEN, and GOTO are repre- 
sented by a special token, or 
single byte. When a program 
is listed, however, the token is 
converted to the appropriate 


word on the screen, so that 
people reading the listing 
know what it is. The specific 
bytes used for indicating key- 
words are native to the 64, so 
these tokens must be re- 
placed with their equivalent 
bytes or the actual set of char- 
acters before any transfer 
can take place. 

Utilities that will take BASIC 
programs and put them into a 
text form do exist for the 64. 
Most computers have soft- 
ware available that will take a 
program in text form and con- 
vert it to a BASIC program, in- 
cluding the IBM. Unfortunate- 
ly, not all BASICs have the 
same keywords, so there 
might be a compatibility prob- 
lem. Only very simple BASIC 
programs can be converted. 

If your 64 program con- 
tains POKEs and PEEKs, the 
addresses are going to mean 
totally different things on an 
IBM. Machine language code 
is definitely nontransferable be- 
cause the 64 and IBM use dif- 
ferent microprocessors with dif- 
ferent sets of instructions. 


ML Pokes to Screen 

How can you make a small 
machine language program 
on the 64 that pokes values 
to the screen from a certain ad- 
dress range? 

ROCQUE BEAUPRE 


HANMER, ON 
CANADA 


Let's say you have the values 
you want to have transferred 
residing in memory starting at 
hex address $C123 and the 
target region starting at some 
other address. What's more, 
let's say that we have 32 
bytes to be moved, a hexadec- 
imal value of #$20. 

The high byte of the 
source adaress is $C1, and 
the low byte is $23. We'll sym- 
bolize this with source high 
byte (SHB) and source low 
byte (SLB). Similarly, we'll sym- 
bolize target high byte (THB) 


and target low byte (TLB) . 
The following assembler 
code shows how the transfer 
is done. 


LDA #SHB_ ; source high byte, 
in this case, $C1 

STA $FC 

LDA #SLB _ ; source low byte, 
in this case, $23 

STA $FB ; $FB,$FC serves 
as a pointer 

LDA #THB  ; target high byte 

STA $FE 

LDA #TLB _ ; target low byte 

STA $FD _ ; $FD,$FE serves 
as a pointer 

LDY #$00 — ; Y register will 
serve as an offset 

LOOP 


LDA (S$FB),Y ; load accumulator 
with the value at 
the 
; address whose 
low byte is stored 
in register 
; SFB and whose 
high byte is stored 
in register 
; SFC and offset by 
the value in the Y 
register. 

STA ($FD),Y ; load the accumula- 
tor with the value 
at the 
; address whose 
low byte is stored 
in register 
; $FD and whose 
high byte is stored 
in register 
; SFE and offset by 
the value in the Y 
register. 

INY ; increment the Y 

register 

; have all 32 bytes 

been passed? 

; if not, loop 

through the trans- 

fer again 


CPY #$20 
BNE LOOP 


Typing in Hex 

Is there a trick or utility that 
will allow me to use hex ad- 
dresses instead of decimal 
when typing POKEs and SYS 
comamnds in BASIC? The BA- 
SIC interpreter must convert 


SEPTEMBER 1992 COMPUTE 


Questions 


and answers about 


formats, poking ML 


typing in hex, 
and more 


G-15 


Suggestions about 


and ways to show 


Gazette Gallery art in 


G-16 


a slide show 


FEEDBACK 


en ee eee eee 


the decimal address to hex or 
binary, so it should be possi- 
ble to intervene in this proc- 
ess to handle hex addresses. 


G. N. ADAMS 
SACKVILLE, NB 
CANADA 


Your question obviously con- 
cerns the 64, since the 128 
has functions for converting 
between decimal and hex. 

Indeed, the BASIC interpret- 
er does convert decimal ad- 
dresses to the computer's 
own numbering system for its 
processing, but you can't sim- 
ply feed it a hex value. Any 
hexadecimal value you type 
in must be processed just as 
a decimal value. After all, it's 
simply a string of characters 
when typed, and any string 
must be processed for mean- 
ing. After processing, the final 
form is in binary (base 2), not 
hexadecimal (base 16). 

We use base 16 when do- 
ing assembler programming 
because it's more convenient 
for coding. Because 16 is the 
fourth power of 2, any binary 
number can be grouped in 
fours, each four bits receiving 
one hex digit. 

If you want to use hex in 
your BASIC program, you'll 
need a subroutine for convert- 
ing the hex to decimal. 
Here's one that'll do it. 


5 REM INITIALIZE 
SUBROUTINE VARIABLES 

10 L=LEN(H$): FAC=1: 
MIN=ASC(‘‘A"):DV=0 

20 FOR X=L TO 1 STEP -1: 
CH=ASC(MID$(H$,X,1)) 

30 IF CH>=MIN THEN 38 

35 V=VAL(MID$(HS,X,1)): GOTO 
40 


38 V=CH-MIN+10 
40 DV=V*FAC+DV: FAC=FAC*16 
50 NEXT: RETURN 


The hexadecimal number is 
sent to this subroutine as a 
string of characters in H§$, 
and the decimal equivalent is 
returned as a value in DV. 


COMPUTE SEPTEMBER 1992 


The subroutine makes use of 
the additional variables L, 
FAC, MIN, X, CH, and V. 

To use this routine to poke 
the hex value #$20 into hex ad- 
dress $04EA, for example, 
you might set up a line of 
code like the following. 


5 H$="'20":GOSUB 10: 
XX=DV:H$="4EA”: GOSUB 10: 
POKE DV,XX 


Which Language First? 

| am interested in becoming a 
computer programmer. | am 
14 years old and in the 9th 
grade. What languages 
should | learn, and in what or- 
der should | learn them? 


JASON SPINETTI 
BUTLER, PA 


Personal computers all work 
fundamentally the same way. 
Information is processed one 
step at a time. Processing 
may require looping back 
through a set of instructions 
or branching to another part 
of the program according to 
some test done upon the da- 
ta. In this sense, one comput- 
er language is like another. 
Since the first skill of a pro- 
grammer is to think like a com- 
puter—breaking a problem 
down into terms the computer 
can understand—the choice 
of language isn't really impor- 
tant. It's only later, when your 
skills become more finely 
honed and the problems you 
present the computer with be- 
come more elaborate or spe- 
cialized, that you need to wor- 
ry about the merits of one lan- 
guage over another. 
Probably the easiest lan- 
guage to learn is BASIC. It 
comes packaged with your 
computer, and its commands 
are easy-to-understand Eng- 
lish words. People will argue 
and say that C is best or that 
they don't use anything but 
Pascal. Others will claim that 
to be really effective, machine 
language is the only answer. 


Hogwash. Any language will 
do for starters, and no lan- 
guage has a monopoly on use- 
fulness. Our advice is to start 
with BASIC. 


Gallery Art 

|_am a subscriber to the Ga- 
zette Disk and really enjoy the 
Gallery art included each 
month. Keep it up! 

I'd like to display all of the 
art in a slide-show program, 
and | noticed that there is a 
program called Super Slide- 
show in the May 1989 issue 
of Gazette. Is it possible to 
transfer Gallery art to another 
disk and use Super Slide- 
show to display it?. If so, how 
do | go about transferring Gal- 
lery art? 

BOB LYONS 
SIMI VALLEY, CA 


All of the art that you see on 
the Gazette Disk is in either 
Doodle or Koala graphics for- 
mat. Both of these formats 
can be displayed by Super 
Slideshow. (By the way, we 
need more Gallery submis- 
sions; we pay at least $50 for 
each one we use.) The only 
thing that would need to be 
changed is the name of the 
Koala-type files. Koala files 
use a 15-character name (pad- 
ded with spaces if the name 
is less than 15 characters). 
The name's first 7 characters 
consist of CHR$(129) (a re- 
versed spade), the letters 
PIC, a space, another letter, 
and then another space. The 
filename itself comes after 
these 7 characters. 

The Gallery art viewer, in or- 
der to let us use longer file- 
names, looks only for that ini- 
tial reversed space, and 
that’s all Gallery art in Koala 
format has. In order to use Su- 
per Slideshow with Gallery 
art, therefore, the additional 
characters, PIC, a space, a let- 
ter, and another space, are 
needed. Any file copier will 
copy the picture files. a] 


New * Big Blue Reader 128/64 - 4.0 


Transfers word processing, text, ASCII, and binary files between 
(64/128 and IBM PC compatible 360K 5.25" and 720K 3.5" disks. 

New Version 4.0 features: Transfers ASCII, PET ASCII and Screen 
Code files including: WordWriter, PocketWriter, SpeedScript, PaperClip, 
WriteStuff, GEOS, EasyScript, Fleet System and most others. 

Supports drives # 8-30. New Backup (C128) and Format (1571/1581) 
programs. Reads MS-DOS sub-directories, uses joystick, and more. 
Includes C128 & C64 programs. Requires 1571 -or- 1581 Disk Drive. 


Big Blue Reader 128/64 - 4.0 only $44.95 


Version 4.0 upgrade, send original BBR disk plus $18. 


Bible Search 3.2 


Complete Old & New Testament text on (4) 1541/71 or (2) 1581 disks. 

An Exhaustive English Concordance on (2) 1541/71 or (1) 1581 disks. 
Includes more than 700,000+ references. 

Incredible five (5) second look-up time, per/word, per/disk. 

Instant, automatic spell checking of more than 12,800 words. 

Wildcard and Boolean AND, OR & NOT search options. 

Search the entire Bible in 5 seconds with 1581 or HD (version 3.52). 

Money Back Guarantee! 

Features: C64 & C128 programs; screen, printer and disk output; 

users guide, disk case. Available on (7) 1541/71, or (4) 1581 disks. 


KJV $49.95 | NIV $59.95 | Both $90 


«x Any questions? Call or write for more information. 


SPECIALS 


OMPUTER SAVER: This C- 
System saves you costly repairs. Over 52% of 
C-64 failures are caused by malfunctioning 
power supplies that destroy your computer. 
Installs in seconds between power supply & 
C-64. No soldering. 2 year warranty. An 
ibsolute must and great seller . $17.95 
Deluxe RX232 Intertace by Omnitron 
Serial Printer Intertace by Omnitronix 
RINTER PORT ADAPTER by 
Avoid obsolescence. Allows you to use any 
ommodore (C-64) printer on any PC compati- 
le or clone. Does not work with 
Amiga... 


512K RAM EXPANDERS 


Super 1750 REU CLone (512K). re not 
142.50 


Si 


COMMODORE DIAGNOSTICIAN II 


Originally developed as a software package, 
then converted to a readable format, the 


NOPE wo 


cian II utilizes sophisticated cross-reference 
L, grids to locate faulty components (ICs) on all 
J C-64 and C1541 computers (C-128/64 mode), 
Save money and downtime by promptly locating 


kind needed.) Success rate from diagnasis-to- 
repair is 98%. Includes basic schematic..$6.95 
f\ (Avail. lor Amiga computers with 313° disk at $1435), 


GRAPEVINE GROL 


Inc 


COMMODORE UPGRADES 


NEW POWER SUPPLIES 


© A super-heavy, repairable C-64 power sup- 
ply with an output of 4.3 amps (that's over 3x 
2s powerful as the original). Featuring 1 year 
warranty, ext. fuse, schematics, UL approved. 
Cost is $37.95 and includes as a bonus the 
Commodore Diagnostician II (valued @ $6.95). 
© 4.3. amp supply for C-128. Same features as 
above—$52.50 

© Our Biggest Seller © 1.8 amp repairable heavy 
uty supply for C-64, (Over 120,000 sold. ). $24.95, 


& EMERGENCY STARTUP KITS 


Repair your own Commodore/Amiga and save 
lots of money. Kits contain all major chips, 
schematics, diagnostics, etc. No soldering. 
Send for full details. Five different kits 
available. 


REPLACEMENT /UPGRADE 
CHIPS & PARTS 


6567 Video . 
PLA 906114 
All 901/225 
4164 (C-64/RAM) 


C-64 Keyboard (new) 
Commodore Cables 
Service Manuals for C64, C128, 1802, 


orden by check, money order, or COD. US funds only. 
i No Credit Card orders. 
Gane & Mexico add $4 S/H, Overseas add $10 S/H ($5 BBR) 


SOGWAP Software ® (219)724-3900 


115 Bellmont Road; Decatur, Indiana 46733 


COMPUTE’s 


1084SP, 1541 
Send For Free Catalog 
bry (co) 3 CHESTNUT ST., SUFFERN, NY 10901 eo 
<= Order Line 1-800-292-7445 Fax 914-357-6243 
Customer Service: 914-368-4242 Intemational Order Line: 914-357-2424 
We Ship Worldwide Hours: 9-6 E.T M-F Prices subject to change 15% Restocking Charge 
Tell a friend you've heard it through the Grapevine. 
Circle Reader Service Number 145 


SpeedScript Disk 


A powerful word processing 
package for Commodore 64 
and 128 owners 


A Great Deal for Commodore 
Users! 


¢ SpeedScript for the 64 

¢ SpeedScript 128—80-column version 
° Spelling checkers 

¢ Mail merge 

° Date-and-time stamp 

¢ 80-column preview for the 64 

* Turbo save and load 


¢ Plus more than a dozen other SpeedScript 
support utilities all on one disk (including 
full documentation) 


Ives! Send me _______ copies of COMPUTE's 
| SpeedScript Disk. 


I've enclosed $11.95 plus $2.00 postage and handling. (Outside 
U.S. and Canada add $1.00 for surface mail or $3.00 for 
| airmail.) 


| ORDER NOW! 


Amount 
Sales Tax’ 
Total 
Name 


Address 


City State 


Mail personal check or money order to 


Commodore SpeedScript Disk 
324 W. Wendover Ave., Ste. 200 
Greensboro, NC 27408 


| Residents of North Carolina and New York, add appropriate tax for your area. Canadian 
orders, add 7% good and services tax. 


Please allow 4-6 weeks for delivery. Program available only on 54-inch disks. 


Add personalized 
touches to 


your computing by 


G-18 


programming 
your computer's 
function keys. 


BEGINNER BASIC 


Larry Cotton 


WHAT DOES THIS 
KEY DO? 


Back in March 1991, | asked 
you readers for some help in 
writing this column. | got lots 
of suggestions, for which | 
thank you! This column is in re- 
sponse to one reader who 
asked that | explain the keys 
unique to the 64 and 128. 

The 64 and 128 are blessed 
with special keys that other 
computers don't have. (The 
128 also has 26 extra keys, 
which give it even more func- 
tionality.) Some of the 66 keys 
common to the 64 and 128 
have dedicated functions, 
some seem to work some of 
the time, and others seem to 
do absolutely nothing. 

As a general statement, all 
keys are internally hard-wired 
to do particular things. By clev- 
er BASIC programming, how- 
ever, you can override most of 
their normal functions until the 
power is turned off. For in- 
stance, in SpeedScript, which 
I'm using right now, the left- 
arrow key is programmed to 
move the cursor to the left, de- 
leting as it moves. Epyx's Fast 
Load cartridge, however, pro- 
grams that same key to save 
a BASIC program. 

Those two examples hap- 
pen to be programmed in ma- 
chine language, but we can 
do the same things (albeit 
more slowly) in BASIC. To do 
this, we should know two 
things about each key: its 
CHR$ code and its keyboard 
matrix value. The CHR$ 
codes are contained in the 
computer's manual and other 
reference guides. The other val- 
ues can be determined by en- 
tering this short program. 


10 PRINTPEEK(197),PEEK(653) 
20 GOTO10 


When you run it, you'll see 
two values that represent 
what's in these memory regis- 


COMPUTE SEPTEMBER 1992 


ters, depending on which 
keys are pressed. When no 
key is pressed, 197 contains 
64, and 653 contains 0. 
Each key (except Shift, 
Ctrl, Commodore, and Re- 
store) Causes a unique value 
to appear in 197, based on 
the keyboard's wiring. If two 
or more keys are pressed si- 
multaneously, one of the keys 
will dominate the others. Note 
that even the Run/Stop key 
has a value (63), which you 
can see by holding Shift and 
pressing the Run/Stop key. 
The value in 653 depends 
on the status of the Shift, Ctrl, 
and Commodore (C=) keys; 
the values are additive, as 
shown below. 
Key Pressed 653’s Value 
Shift 1 
C= 2 
Shift/C= 3 
Ctrl 4 
Shift/Ctrl § 
Ctri/C= 6 
Shift/Ctrl/C= 7 


Let's write another short BA- 
SIC program that illustrates 
how to put this knowledge to 
work for us by programming 
the function keys to change 
background and text colors. 


10 PRINTCHRS$(147) 

20 K=PEEK(197): S=PEEK(653) 

30 IFK<30RK>6THEN20 

40 IFS=0 THEN ON K-2 

GOTO100,110,120,130 
50 IFS=1 THEN ON K-2 
GOTO140,150,160,170 

100 C=5: W=0: GOSUB500: 
GoT020 

110 C=6: W=1: GOSUB500: 
GoT020 

120 C=3: W=2: GOSUB500: 
GOT020 

130 C=4: W=3: GOSUB500: 
GoT020 

140 C=7: W=4: GOSUB5S00: 
GoT020 

150 C=10: W=6: GOSUB500: 
GoT020 

160 C=11:W=5: GOSUB500: 
GoT020 


170 C=12:W=7: GOSUB500: 
GOT020 

500 POKE53280,C: POKE53281,C: 
POKE646,W 

510 PRINT “LIKE THIS COMBI- 
NATION?[UP]”: RETURN 


Line 20 checks memory reg- 
isters 197 and 653. Since 
we're looking only for function 
key activity, we weed out all 
other keyboard matrix values 
in line 30, Lines 40 and 50 de- 
termine whether the Shift key 
is pressed or not and then the 
ON-GOTO statement is used. 


10 PRINTCHR$(147):POKE646,1 

20 BG=53281:B0=53280 

30 GETA$:IFA$="*"THEN30 

40 V=ASC(AS): IFV<133 ORV>140 

THEN3O 
50 ONV-132 GOTO100, 110, 120, 
130, 140, 150, 160, 170 

60 GOTO30 

100 BG=5:B0=0: GOSUB500: 
GOTO30 

110 BG=6:B0=1: GOSUB500: 
GOT030 

120 BG=3:B0=2: GOSUB500: 
GOT030 

130 BG=4:B0=3: GOSUB500; 
GOTO30 

140 BG=4:B0=8: GOSUB500: 
GOTO30 

150 BG=10:B0=6: GOSUB500: 
GOTO30 

160 BG=11:B0=5: GOSUB500: 
GOTO30 

170 BG=12:B0=7: GOSUB500: 
GOTO30 

500 POKES3281,BG: 
POKES53280,B0: PRINT 
“LIKE THIS COMBINA- 
TION?[UP]”:RETURN 


Line 30 waits for a keypress. 
Line 40 gets the ASCII value 
of A$, subtracts 132, and 
then uses ON-GOTO to 
choose the appropriate line. 
Of course, you'll probably 
want to do more important 
things than just change col- 
ors with the function keys, but 
this should give you enough 
information to get started. 
Next month we'll look at more 
unique keys. oO 


DISKS O'PLENTY INC 
7958 PINES BLVD. SUITE 270A 
PEMBROKE PINES FL 33024 
(305) 963-7750 
Call or write for free descriptive catalog of 
C64/128 Public Domain & Shareware 
Choose from over 900 Disks 
Adult list of over 50 Disks available 
to those 18 or over. 

SID MUSIC UTILITIES 
PRINTSHOP UTILITIES 
JR HIGH EDUCATION 
HIGH SCHOOL EDUC. 
TYPING / SPANISH 
COMPUTER SCIENCE 
PIRATES TOOLBOX 
FOREIGN ARCADE 
CASINO-BOARD GAMES 
GEOS FONTS 

LOTTERY PROGRAMS 
COLLECTORS CORNER 


Circle Reader Service Number 253 


021MU 


019GR 
019ED 
062ED 
033ED 
031ED 
O10UT 
119GA 
022GA 
021GE 
002MS 
003MS 


Choose 6 for $5.00 
LIMITED OFFER 


THE STRATEGY/CAMPAIGN GAMES 

of JACK O'ROSES o1s92 

for play on Commodore 64/128 and Plus 4 
(5 1/4° disc. Specify if for Plus 4) 

$19.00 Each or $55.00 for all 3! 


THE RECENT UNPLEASANTNESS 
Individual contro! of 43 Confederate Divisions/149 
Brigades. Could you have turned back the Federal on- 
slaught? Don't re-fight the Civil War, declare your own! 


COMSOPAC : The Guadalcanal Campaign 
Engage the Imperial Japanese Navy in Ironbottom 
Sound. Lead air attacks on the "Tokyo Express” in "The 
Slot”. Be with the 1st Marines and American Division 
along the Tenaru. 


MALADAN THE INVADER 


You alone, Krysiga, have the political and military 
savvy to form the Alliance and into battle the legio 
of the nine fuedal Lords. Slam-bang medieval co! 
Never play the same game twice. Packed with Historical fact. 
‘Send check or money order to: 
JACK O' ROSES 
P.O. BOX 144, MIDDLETOWN, PA 17057 
(717)944-5843 


ode! 


rot 


* Upgrade your Commodore system 


Refurbished Hardware 
TORS DRIVES OTHER 
1660-$30 
1670-$50 
C64 -$100 
64C-$120 


1541-$100 
1544-11-$120 
1571-S165 
1571-11-$185 
1581 -$180 C128-$175 
1001SFD-$150 _C128D-$225 
1590 DATASETTE-$35 
MANY BOOKS- $10 SOFTWARE - $10-20 
ASK FOR ANYTHING, | MIGHT HAVEITI 
J.P. PBM PRODUCTS BY MAIL 
P.O. BOX #1233, STATION B 
WESTON, ONTARIO, M9L2R9 


FOR STAR NX1000C 


CommoporE 64 


C-64 Program: "DRAW-PRINT 


DRAW AND PRINT YOUR GRAPHICS OR PICTURES IN COLOR 
DRAW: Full 320x200 pixel high res. bit map screen - 
On screen crayon coordinates for precision - 

PRINT: 4"x2.75" or 8"x5.5" screen dumps In color - No Interfaces needed 
FUN TO USE - MANY HOURS OF CREATIVE SATISFACTION 
$14.00 check or money order to: 


G.P. Software, Box 571, West Long Branch, NJ 07764 


New APROTEK modems 
64/128/AMIGA-2400 BAUD-$119 
64/128/AMIGA-1200 BAUD- $89 
APROSAND-4 SLOT CARTRIDGE 
EXPANDER FORTHE 64/128 -$40 
New CMD accessories 
JIFFYDOS 64/128 & ANYORIVE“SYSTEM"-$85 
128D/ANY DRIVE “SYSTEM"- $95 
‘ADDITIONAL DRIVE ROMS - $45 
RAMLINK/RAMCARD C/W BATTERY (OMb)- $345 
{Mb RAMSIMM-$75___ 4b RAMSIMM - $250 
SHIPPING INCLUDED FOR CANADA, USA +15% 
15 DAY WARRANTY ON REFURBISHED GOODS 
TAX-Canada+7% GST, OntarioRes. +8% PST 


RAINBOW PRINTER 


Key press andjor 1351 Mouse crayon control 
Vertical and horizontal mirror Imaging, re-coloring 


PuBLic DOMAIN 


Highest Quality Since 1987* 
Games, Education, Business, Utilities, GEOS, Music, Graphics & 
More. As low as 90¢ per collection. 1 stamp for complete catalog 
or $2.00 for catalog AND 30 sample programs (refundable). 


24 hour shipping. 


64 DISK CONNECTION 


4291 Holland Rd., Suite 562 


- Vi 


(* Formerly RVH Publications) 
Circle Reader Service Number 254 


ORIGINAL COMMODORE 
C= 1750 (512K) ee ee PLUG-IN G 


Commodore has just released 400 of these hard-to-find RAM expansion units that give you a full 12K 
of RAM at a sensational price. NOTE: The 1750 works with C64 and C128. A separate heavy-duty 
power supply is needed for the C64, which we will sell at a discounted price of $27.95. DONT MISS 


OUT ON THIS ONE! 


The Grapevine Group, Inc. 
3 Chestnut St., Suffern, NY 10901 


ee KBD order tine: 1-800-292-7445 or 914-357-2424 


wl 


Customer Service Line: 914-368-4242 


We Ship Worldwide 


Fax: 914-357-6243 


Hours:9-5 ET M-F 


Circle Reader Service Number 145 


XC) 
ey) 


Can Your 
Computer Make 


YOu 
‘$1,000,000? 


WITH LOTTERY PC YOUR NEXT TICKET 
COULD BE WORTH MILLIONS! 

LOTTERY uses the raw power and storage of your 
computer to determine and refine the number selection 
methods that will win the various lottery games you 
play. Don't be limited to the one or two methods that 
other programs use. they might not work in your state. 
There is no better system available! 

Join the growing list of winners using our system. 


SPECIFY: 
Lottery 64(C64/128) 
Lottery PC 
IBM PC/XT/AT and compatibles 


Commodore64/128 & Plus/4 are registered 
trademarks of Commodore Int 
IBM PC/XT/AT ate registered trademarks of 
International Business Machines Inc 


To order, send $29.95 for each plus $3.00 postage & 
handling per order to 

(Illinois residents add 6% sales iat). 

(Grders outside North America add $3.00) 


(ey 


[> 


C.0.D. orders call: 


(708) 566-4647 
Superior Micro Systems, Inc. +. 
as 26151 N. Oak Ave. (aid S 
Mundelein, IL 60060 Ys, 
At 4 


Circle Reader Service Number 221 


IF YOU'RE NOT 
RECYCLING 
YOU'RE THROWING 
IT ALL AWAY. 


1-800-CALL-EDF 


G-20 


Use a double 
buffer to produce 
extremely fine 
scrolling on your 
64’s screen. 


MACHINE LANGUAGE 


SSS Sa ES Ee ae 


Jim Butterfield 


SMOOTH 
SCROLLING 


Pixel scrolling seems simple. 
Experimental POKEs on a 64 
to address 53265 or 53270 
(hexadecimal D011 or D016) 
will show how the screen may 
be shifted one pixel. 

The tough part comes 
when you reach the limit of a 
pixel register, which goes 
from 0 to 7. At that time, you 
must move every one of the 
characters onscreen to a new 
location and then reset the pix- 
el count. 

So, can we move 1000 
bytes in less than '/6eo second? 
Practically speaking, it can't 
be done, not even at the blind- 
ing speed of machine lan- 
guage. And if we are working 
with a high-resolution screen, 
we need to move 8000 bytes. 
So many bytes, so little time. 
It's out of the question. 

There is a way around it, 
though: double buffering. 
Here's how it works. We have 
two screen areas set up in 
memory, One screen is being 
displayed, and the other is be- 
ing constructed. When the sec- 
ond screen is complete, we 
tell the video chip to switch its 
attention to the new location. 
It now becomes the “real” 
screen, and we can start to 
build a new display in the for- 
mer screen-memory area. 

It still takes time to do this, 
but the switch won't take 
place until the new screen is 
completely built. Both pixel 
scrolling and the screen 
switch benefit from careful tim- 
ing. We must pull the switch 
during retrace to ensure that 
there will be no flicker or 
screen jump. 

The following is a simple 
smooth-scroll program for the 
64 that demonstrates this tech- 
nique. The code is stored in 
the cassette buffer memory ar- 
ea. Because of its size, we'll fo- 
cus our attention on selected 


COMPUTE SEPTEMBER 1992 


parts of the program. You may 
enter the BASIC program, run 
it, and then disassemble the 
machine language code if you 
want to see details. 

Our two screen buffers are 
located at 32768 and 33792, 
hexadecimal 8000 and 8400. 
We build the new screen by 
copying characters from the 
other, active, screen. The direc- 
tion of our scroll is up, so we 
drop the first 40 characters 
from the old screen, copy the 
rest, and then fill the bottom 
line of the new screen with 
space characters. 

The program uses two indi- 
rect addresses to do this cop- 
ying: $26/27 holds the “from” 
pointer, and $28/29 the “to” 
pointer. As we flip between 
the two screens, the two point- 
ers are set appropriately. 

The first thing the program 
must do is copy the screen. 
That occupies code from 
$033C to $037E. A short loop 
follows to pad the bottom line 
with space characters. 

At $038A, we walk the old 
screen through its pixel scroll. 
Since we're scrolling in the up 
direction, our objective is to 
step the Y pointer from 7 
down to 0. That pointer is 
stored in the video register at 
$D011, which also contains 
the video-enable signal as bit 
4. So the value that we stuff in- 
to that register will step from 
$17 down to $10; we hold this 
value in the X register. 

Before each pixel scroll, we 
wait for a screen retrace. We 
do this by watching that same 
register, $D011. Its two high- 
est bits tell us about the ras- 
ter. When the value of those 
two bits goes down, it’s re- 
trace time. 

In fact, we wait for six re- 
trace events. We don’t want 
our pixel scroll to be too fast, 
or the user might miss it. Each 
retrace happens in about '/eo 
second, so a loop of six retrac- 
es will slow our pixel move- 
ment to 10 per second. 


; scroll seven pixel positions 


038A LDX #$17 

; wait about 1/10 second 

038C LDY #$05 

; wait for screen retrace 
038E LDA 
$0011 
0391 AND 
#$CO 
0393 CMP 
$03D0 
0396 STA 
$03D0 
0399 BCS 
$038E 
039B DEY 
039C BPL 
$038E 

; do pixel scroll 

; set up 

next 

039E STX $D011 

03A1 DEX 

03A2 CPX #$10 

03A4 BCS $038C 


Now the pixel scroll has 
reached its limit. Our screen 
characters are set; we simply 
flip to the new screen. We 
must also return the pixel 
counter to its highest value. 
Moving the characters is the 
equivalent of eight bits of 
scrolling, so we back off sev- 
en bits to produce a net one- 
bit scroll. 


03A6 LDX #$17 
O3A8 LDA $D018 
O3AB EOR #$10 
O3AD STA $D018 
03BD STX $D011 


The above coding puts the 
two store instructions close to- 
gether to minimize possible 
screen jump. In fact, we're 
quite safe, since all this is be- 
ing done in retrace time. 

A small amount of extra cod- 
ing is added. Its purpose is to 
reposition the cursor so that 
the next time we print, the in- 
formation will go to the new 
screen and be printed at the 
appropriate place. This in- 
volves storing a new value in 
address $0288. The Kernal 


routines use this address to 13,141,208,3,176, EXAMPLE"; DS 466 FOR J=1 TO 1000:N 
find the screen. 243 MQ 396 SYS 828 EXT J 
EQ 15@ DATA 136,16,24G,1] FA 406 PRINT "OF PIXEL S|ER 800 POKE 648,4 
The program code shows 42,17,208, 202,224 CROLLING"; GJ 810 PRINT "END!" 

a character screen moving ,16,176,236,162,2| HQ 410 SYS 828 JM 820 POKE 53272,26 

in one direction only. Once 3,173,24,268,73 AJ 420 PRINT "WITH DOUBL] FJ 830 POKE 56576,7 

you understand the princi- | AB 160 DATA Mer TAT ee ae E BUFFERING"; DE a BORE. 03708127 one 

i 2,17,208,17 XS 430 SYS 828 
ples involved, you can take ’ GEAUGA gh elt 
an 7 136,2,73,4,141,13| FF 44@ PRINT "I HOPE YOU IONAL 

on more ambitious jobs. 6,2,169,145,32,21 LIKE IT"; KA 8606 POKE 55,@:POKE 56 

BX 100 DATA 169,46,133,3 6,255 HX 450 SYS 828 7 160:CLR 
8,169,0,133,40,16| XS 174 DATA 169,13,76,21 
2,128,160,132,134 6,255 
739,132,41,169,16| EB 200 FOR J=828 TO 964 TYPING AIDS 

HP 116 Pe Ogee ae Boa bebe MLX, our machine language entry program for the 64 and 128, and 
162 a 160.4 177 FQ 230 POKE J,X The Automatic Proofreader are utilities that help you type in Gazette 
38 145,40, 200,192 OF 240 NEXT 3. Programs without making mistakes. To make room for more pro- 
Sgie es MJ 250 IF T<>15776 THEN grams, we no longer include these labor-saving utilities in every is- 

DC 126 DATA 144,247,24,1 {SPACE}STOP sue, but they can be found on each Gazette Disk and are printed 
65,38,105,40,133,| BD 286 POKE 55,@:POKE 56 in all issues of Gazette through June 1990. 
38,144,2,230,39,2 ,128:CLR lf you don't have access to a back issue or to one of our 
4,165,48,105,40,1|DX 300 POKE 53265,23 disks, write to us, and we'll send you free printed copies of both of 
a Ee a aS si4 po Besz ens these handy programs for you to type in. We'll also include instruc- 

EM 138) page 324/24 aad 2| KH 330 oe 648 128 tions on how to type in Gazette programs. Please enclose a self- 
18 169 32 166 g1 KD 340 PRINT CHRS (147) addressed, stamped envelope. Send a self-addressed disk mailer 
45,40,206,192,46 |JE 356 FOR J=1 TO 22 with appropriate postage to receive these programs on disk. 

SF 1406 DATA 144,249,162,|CS 366 PRINT Write to Typing Aids, COMPUTE's Gazette, 324 West Wen- 
23,166,5,173,17,2| PS 370 NEXT J dover Avenue, Suite 200, Greensboro, North Carolina 27408. 
68,41,192,205,268|HK 386 PRINT "THIS IS AN 

| 
SEPTEMBER 1992 COMPUTE  G-21 


For GEOS to interpret 


the signals from 
your input device, 
you need to 


provide it with a bit 


G-22 


GEOS 


Ear Se a eS] 


Steve Vander Ark 


POINTERS AND 
DRIVERS 


A graphical user interface 
(GUI) such as GEOS handles 
routine commands with a point- 
er on the screen, which 
makes the computer a friend- 
ly place to work and play. Just 
point and click, and the com- 
puter leaps into action. 

There has to be a link, how- 
ever, between your thinking 
and the computer's high-pow- 
ered magic. You need some 
way to move the pointer on the 
screen, some gadget that will 
translate your actions into elec- 
trical impulses the computer 
can understand. GEOS refers 
to these gadgets as input de- 
vices; you most likely refer to 
them as a mouse and joystick. 

In order for GEOS to know 
how to interpret the signals 
from the device you're using, 
you need to provide it with a 
small bit of code called an in- 
put driver. You probably know 
that the input driver you install 
on your boot disk will be the 
one the system assumes 
you're using when it boots. 

You probably also know 
that you can switch from one 
input driver to another from 
the deskTop with an option on 
the GEOS menu. The joystick 
and the mouse aren't the only 
input devices around, howev- 
er. GEOS 64 has drivers for 
two other popular gadgets: 
the light pen and the Koala- 
Pad, For another thing, the driv- 
ers you get with GEOS aren't 
the only ones available—and 
aren't necessarily the best 
ones either. 

As far as devices go, the 
best known are the mouse, 
the joystick, the Inkwell light 
pen, and the KoalaPad graph- 
ics tablet. Each device has its 
strong points. 

The joystick is particularly 
well suited for games. Also, 
the Suncom Icontroller, a 
small joystick that attaches to 


COMPUTE SEPTEMBER 1992 


the side of your 128 or 64, lets 
you keep your hands near the 
keyboard while working; this is 
handy while using geoWrite. 

The mouse is perhaps the 
most versatile of the bunch; its 
proportional movement (in oth- 
er words, the fact that it 
speeds up as it moves) 
makes it superior for maneuver- 
ing around the GEOS screen. 
Since the mouse is held rough- 
ly the same way a pen or pen- 
cil is held—in one hand and 
moved about on a flat sur- 
face—it's very easy to use for 
graphics in geoPaint or for ob- 
ject placement in geoPublish. 

If a natural drawing posture 
is what you're after, though, 
the light pen is a logical 
choice. You hold it like a pen, 
obviously, and actually draw 
on the screen with it. For 
some drawing tasks, the light 
pen is perfect. Freehand art- 
work using the spline tool in 
geoPublish is a good exam- 
ple. On the downside, you 
have to hold your hand up to 
the screen all the while. 

With the KoalaPad, you 
hold the stylus exactly like a re- 
al pen. Since you hold the writ- 
ing surface with your other 
hand, this device gives the 
best combination of intuitive 
use and comfortable posture. 
Device drivers for both the 
light pen and the KoalaPad 
are included only with the 64 
version of GEOS, however. 

These official drivers for the 
pen and pad are far from per- 
fect. For one thing, the light 
pen driver reads the button 
click from the button on the 
pen itself. This is fine for drop- 
down menus, but if you're po- 
sitioning graphics or trying to 
hold the end of a spline in 
place, you can't press the but- 
ton without serious jiggling. 
This makes using the pen for 
graphics virtually impossible. 

Q-Link has a solution in the 
form of an alternate driver 
called PenJoy (filename: PEN- 
JOY, uploaded by Mystic 


Jim). Instead of reading the but- 
ton on the pen, PenJoy reads 
the button of a joystick 
plugged into port 2. Even with 
the best of alternative drivers, 
though, the response of the 
pen to the screen in GEOS is 
poor. The pen frequently mis- 
reads the screen, which in ge- 
oPaint results in stray and scrib- 
bly lines. 

The problem with the Koala- 
Pad driver is that it translates 
the position of your pen on the 
pad literally to a position on 
the screen. If you don't have 
the pointer “attached” to your 
pen position, such as when a 
drop-down menu opens and 
the pointer is arbitrarily 
placed on the first choice, you 
have to scratch around trying 
to snag the arrow’s position 
with your stylus. Chances are 
you'll miss it or accidentally 
move it away from where you 
wanted it. The precision with 
which you can move the point- 
er is less than exact as well. 

A new KoalaPad driver avail- 
able on Q-Link addresses 
these problems; it's filename 
is KOALA PAD III, uploaded 
by SYSOP Ph). 

There are input drivers avail- 
able on Q-Link for the mouse 
and joystick as well. You can 
get mouse drivers that use 
port 2, that allow you to double- 
click only with the right but- 
ton—not the left—and that 
switch your 128 into 2-MHz 
mode. You can also find driv- 
ers for Supersketch and the 
Atari trackball on Q-Link. 

Which device is best? I've 
used them all with various driv- 
ers and in most applications, 
and I'll put my money on the 
mouse. There's simply no in- 
put device that works as 
smoothly and precisely or 
feels as natural as the mouse. 
It works better for freehand 
drawing than either the light 
pen or the KoalaPad, and it 
scoots you around the desk- 
top more quickly and efficient- 
ly than the joystick. ia] 


The Gazette 
Productivity 
Manager 


(Formerly PowerPak) 


Harness the productivity 
power of your 64 or 128! 


Turn your Commodore into 

a powerful workhorse, keep track 
of finances, generate reports 
in a snap, manage your 
money in minutes— 

all with the new 1991 
Gazette Productivity 
Manager! Look at all 
your 64/128 Productivity 
Manager disk contains. 


ORDER YOUR 
1991 GAZETTE 
PRODUCTIVITY 
MANAGER 
TODAY! 


GemCalc 64 & 128— 

A complete, powerful, user- 

friendly spreadsheet with all 
the features you’d expect 

in an expensive commercial package 
(separate 64 and 128 versions are included). 
Most commands can be performed with a single keypress! 


Memo Card—Unleashes the power of a full-blown 
database without the fuss! Nothing’s easier—it’s a 
truly simple computerized address file. Just type in 
your data on any one of the index cards. Need to edit? 


Just use the standard Commodore editing keys. (MasterCard and Visa accepted on orders with subtotal over $20). 
Finished? Just save the data to floppy. What couldbe =~... 
easier? LIYES! Please send me —_ Productivity Manager disk(s) 


($14.95 each). 

—_—_— Subtotal 

______ Sales Tax (Residents of NC and NY please add appro- 
priate sales tax for your area. Canadian orders, add 
7% goods and services tax.) 

_____ Shipping and Handling ($2.00 U.S. and Canada, $3.00 
surface mail, $5.00 airmail per disk.) 


Financial Planner—Answers all of those questions 
concerning interest, investments, and money manage- 
ment that financial analysts charge big bucks for! You 
can plan for your children’s education and know 
exactly how much it will cost and how much you need 
to save every month to reach your goal. Or, decide 
whether to buy or lease a new car. Use the compound 
interest and savings function to arrive at accurate 
estimates of how your money will work for you. 
Compute the answer at the click of a key! 


DON’T MISS OUT ON THIS 
POWERFUL WORKHORSE! 


! 

I 

| 

| 

! 

! 

I 

1 

! 

—— Total Enclosed 

| —Check or Money Order — MasterCard — VISA 
1 Credit card No. 
! 
1 
! 
! 
! 
1 
I 
I 
I 
I 
I 
I 
| 


Signature 


(Required) 
Daytime Telephone No. 


Name 


Address 


City 
State/ uP/ 
Province 


Send your order to Gazette 1991 Productivity Manager, 
324 W. Wendover Ave., Ste. 200, Greensboro, NC 27408. 


Here are several 
disk-related 


G-24 


come in handy. 


PROGRAMMER’S PAGE 


Randy Thompson 


DISK TRICKS 


Disk drives are such an inte- 
gral part of any computer sys- 
tem that it would be difficult to 
imagine computing without 
them. Here are some great 
disk-related tips sent in by read- 
ers. Keep those tips coming; 
we pay $25-$50 for each one 
we publish. 


Quick and Easy Append 
Follow these seven steps the 
next time you need to add 
one BASIC program onto the 
end of another BASIC pro- 
gram. Note that the last line 
number of the first program 
must be lower than the first 
line number of the program be- 
ing appended. 


1. Load the program with the 
lowest line numbers. 

2. Enter the commands POKE 
43,PEEK(45)-2: POKE 44, 
PEEK(46) 

3. Load the program with the 
highest line numbers. 

4. Enter the commands 
POKE 43,1: POKE 44,8 

5. Enter LIST to check your 
new, larger program. 

6. Ifyou get an OVERFLOW er- 
ror message, enter a do- 
nothing line, such as O 
REM 

7. Save your new program. 


HELEN ROTH 
LOS ANGELES, CA 


What's Your Address? 

The following program asks 
for the filename of a machine 
language program and then 
tells you where that program 
loads into memory. This is im- 
portant information when you 
forget a program's SYS ad- 
dress because the address in 
which a program loads is usu- 
ally its SYS address, too. 


RB 10 INPUT "PILENAME";FS 

RA 20 OPEN 8,8,8,FS+",P,R” 

SC 30 GET#8,LBS,HBS 

QR 40 CLOSE 8 

KH 5@ HB¥ASC (HBS+CHRS(@)) :LB=A 
SC (LBS+CHRS$ (@)) :SA=HB*25 
6+LB 


COMPUTE SEPTEMBER 1992 


JA 6@ PRINT "STARTING ADDRESS: 
"FSA 

PRINT "PROBABLE PROGRAM 

{SPACE}TYPE: "; 

IP SA=2049 THEN PRINT "B 
ASIC":END 

PRINT "MACHINE LANGUAGE" 


QH 70 
Ps 80 
SM 98 


JOHN L. BERGERSHIRE 
MANSTOWN, PA 


Scratch That Last Command 

If you accidentally delete a 
program from disk using 
DOS's SCRATCH command, 
you may be able to recover it 
if you act quickly. Immediate- 
ly after erroneously deleting a 
file, enter LOAD “*",8. If the 
scratched program was the 
last one loaded or saved, the 
computer will reload that pro- 
gram into memory. Now, be 
sure to save the program to 
disk again before you do 
anything else foolish. 


ROB MAXWELL. 
DELTA, B.C. 
CANADA 


Disk Manager 

This simple program makes it 
easier to format disks and re- 
name and delete files. 
Choose the desired menu op- 
tion and answer the prompts. 


KP 18 PRINT "{CLR}{RVS} 

{6 SPACES}DISK MANAGER - 
BRAD SCHULTZ{7 SPACES}" 
: PRINT: PRINT 
PRINT: PRINT 

{RVS}1 {OFF} 

PRINT: PRINT 

(RVS}2{OFF)} 

PRINT: PRINT 

{RVS}3{OFF} 

PRINT: PRINT 

{RvS}4 {OFF} 


KK 26 "{2 SPACES} 
RENAME FILE" 
"(2 SPACES) 
DELETE FILE” 
"{2 SPACES} 
FORMAT DISK" 
"{2 SPACES} 
EXIT PROGRAM 


GH 36 
Gs 4¢ 


GI 56 


KS 6@ PRINT:PRINT "ENTER YOUR 
{SPACE}CHOICE: "; 

GET K$:IF KS<"1" OR KS>" 
4" THEN 70 

PRINT K$: PRINT: PRINT:ON 
{SPACE}VAL(KS) GOSUB 196 
1208,300,406 

AF 98 GOTO 16 

PF 106 REM RENAME FILE 

MJ 116 INPUT "OLD FILENAME" ;OF 
$:IF OFS="" GOTO 166 
INPUT "NEW FILENAME"; NE 
$:IP NES="" GOTO 166 
OPEN 15,8,15 
PRINT#15,"RG:";NES;"="; 
ors 

CLOSE 15 

RETURN 

REM DELETE FILE 

INPUT “DELETE WHICH FIL 
E";DFS:IF DFS="" GOTO 2 
58 

OPEN 15,8,15 
PRINT#15,"SG:";DES 
CLOSE 15 


ss 78 


JJ 88 


FG 126 


MD 136 
xe 14¢ 


FF 15¢ 
KA 160 
FQ 200 
MS 219 


BK 226 
DE 23¢ 
MP 24@ 


SG 250 
GK 300 
Pc 316 


RETURN 

REM FORMAT DISK 

INPUT "DISK NAME"; DNS:1 
F DNS="" GOTO 370 

PRINT "PLACE DISK TO BE 
FORMATTED INTO DRIVE 8 
AND PRESS A KEY" 

GET K$:IF KS="" GOTO 33 
@ 

OPEN 15,8,15 
PRINT#15,"NG:";DNS;",BS 


CH 320 


XA 338 


PB 340 
XM 350 


CLOSE 15 
RETURN 

REM EXIT PROGRAM 
PRINT "{CLR}":END 


SD 360 
DR 376 
KS 496 
DR 416 


BRAD SCHULTZ 
APPLETON, WI 


Quick-Load Classic 

Here's a classic load-and-run 
tip that's been around the 
disk block a few times, but it's 
so useful it bears repeating. In- 
stead of entering a LOAD com- 
mand, waiting for the designat- 
ed program to load, and then 
typing RUN, try typing LOAD 
“program 8: and then press- 
ing Shift-Run/Stop. As soon 
as you do, LOAD appears on 
the screen, and your program 
automatically loads and runs. 
You don’t even have to press 
the Return key. 


KEVIN REEVES 
GROTON, CT 


Vital Statistics 

The BASIC code listed below 
allows you to determine a 
disk’s vital statistics. You can 
determine the disk's name, 
ID, and number of free and 
used disk blocks from within 
a program without listing the 
disk’s entire directory. The en- 
tire process takes three sec- 
onds or less. 


FJ 18 SYS 57812"$0",8,0:POKE 7 

8,G:POKE 781,:POKE 782 

1207:SYS 65493 

BF=PEEK (53625) *256+PEEK ( 

53024) :BU=664~BF 

SS=52998:FSS$="":GOSUB 16 

O:DNS=FSS 

ID$=CHRS (PEEK (53016) ) +CH 

RS (PEEK (53017) ) 

PRINT "DISK NAME: ";DNS$ 

PRINT "DISK ID: ";ID$ 

PRINT "BLOCKS USED:";BU 

MD 8@ PRINT "BLOCKS FREE:";BF 

ME 90 END 

HF 100 SC=PEEK(SS):IF SC=160 0 
R SC=34 THEN RETURN 

RD 116 FS$=FSS$+CHRS (SC) :SS=SS+ 
1:GOTO 106 


SM 20 
EB 38 
KX 48 
DH 58 


DE 60 
xJ 78 


CAMERON KAISER 
LA MESA, CA a 


PROGRAMS 


DRIXELLA’S DILEMMA 


By Arthur Moore 

Drixella's Dilemma is a game with decep- 
tively simple rules, but it's a game that re- 
quires strategic planning. It’s played on 
a 64 with one joystick. 

The evil witch Drixella has taken you 
hostage. All is not lost, however, she dan- 
gles before you one chance for freedom. 
“Here you will remain,” she shouts with a 
booming voice, “until you solve the puz- 
zle!" The door slams shut, and her chill- 
ing laughter fades into silence. 

You notice a clay board in a corner 
that consists of 96 squares, 12 across 
and 8 vertical. Nearby are a scroll and 
small velvet pouch. Opening the scroll, 
you see faint writing. You begin to read. 

“Herein are 72 tiles that have been 
painted six different colors. On them are 
six different icons that represent the 
realm of witchcraft: broom, cauldron, bee- 
tle, black cat, crow, and Drixella's hat. 

“Your goal is to place all 72 tiles on the 
playing board. The first 6 have been 
placed for you. To complete the task, you 
must follow these five rules. 


“4. Tiles are taken out one at a time. 

"2. To play a tile, you must place it next 
to an occupied square. Diagonals aren't 
included. 

"3, Surrounding tiles must match the 
played tile in either color or icon. 

"4. If a played tile touches more than one 
other, the matches must balance. If two 
tiles are adjacent, one must match by col- 
or and the other by icon. If three should 
border, two must have the same color or 
icon, and the other must match in icon or 
color. If four should border, then there 
must be two color matches and two icon 
matches. 

“5. You must play a tile before the timer 
runs out. After each play, the timer will be 
reset and will run a bit faster.” 

“Simple enough,” you say to yourself. 
“I'll just play all the tiles, and I'll go free!” 
Little do you realize that this is the first of 
many days that you'll spend pondering 
Drixella's Dilemma. 


Entering the Program 

Drixella's Dilemma is written entirely in 
machine language. To enter it, use 
MLX, our machine language entry pro- 
gram; see “Typing Aids” elsewhere in 
this section. When MLX prompis, re- 


spond with the following values. 


Starting address: 0801 
Ending address: 1608 


Be sure to save a copy of the program 
before you exit MLX. 


Taking Control 

Use a joystick in port 2 to play. Move 
the flashing cursor to the desired 
square and press the button to put the 
tile at the right on the playing board. A 
buzz indicates an illegal move, and the 
explanation will be highlighted below. 
Your timer ticks down at the left of the 
board. Scoring is based upon the num- 
ber of adjacent tiles. One adjacent tile 
earns 10 points, two tiles earn 30 
points, three tiles earn 90 points, and 
four tiles earn 200 points. 

The plus sign (+) beneath your 
score counts the number of four-way 
combinations you have completed. 
These are tiles with all four adjacent 
squares occupied at the time of play- 
ing. These mark the gauge of a true 
champion. 


Practice, Practice 

At the title screen, you have the option 
of playing either a scored game as de- 
scribed above or a no-pressure prac- 
tice game. In the latter mode, a timer 
won't be used, allowing you time to con- 
centrate on every move. Score isn't tal- 
lied in practice. 

You also have an undo key in prac- 
tice mode. By pressing f1, you can 
take back your previous move. All 
moves are recorded, so you may undo 
as many as you wish. Of course, this ac- 
tion is frowned upon, and your comput- 
er will taunt a bit. In a practice game, 
you simply make as many moves as 
you can. 

During actual play, the game will 
end should the timer run out before 
you make a move. Pressing f7 while 
playing either mode will return you to 
the title screen. 


Hints 
Go for points early. Look for moves 
that border more than one tile. This 
will free up moves when the board fills 
and moves become scarce. 

Don't group too many of the same 
color in one area. Likewise, don’t 


' 


group too many of the same icon in 
one area. This will make it difficult to 
make moves with multiple borders. 


DRIXELLA’S DILEMMA 


6801:0C G8 C8 B7 YE 26 32 30 AC 
G809:36 33 66 GB GB GB 26 8D CE 
@811:10 24 Fl G8 20 GB GA AY DA 
9819:A4 85 FB 85 FD AQ 04 85 DB 
@821:FC A9 D8 85 FE 26 C9 GA AZ 
@829:A9 6E 8D 54 15 A9 6G 8D 7D 
G831:8A 02 8D 59 15 8D 58 15 F2 
@839:AD GE 16 C9 48 DG G3 4C DA 
6841:10 10 20 14 @C AD 53 15 75 
0849:F@ G6 20 37 GF CE 54 15 3C 
@851:EE 27 D@ AD 53 15 FO OB 73 
0859:20 4F OF AD 55 15 FG G3 ED 
6861:4C F6 GF AE 54 15 AG FF SA 
@869:88 D@ FD CA D@ FB AD BG 24 
@871:DC 29 GF 49 OF D® 34 26 F4 
@879:E4 FF C9 88 FO 98 
@881:D@ 12 AD 53 15 D@ GD 4C BB 
6889:11 GE A9 13 20 D2 FF AY G2 
@891:00 85 C6 66 AD GG DC 29 32 
9899:10 D@ BS 26 32 GC AD 16 D1 
@8A1l1:16 38 AD FG 93 26 7B OF BO 
@8A9:4C 51 08 C9 G1 FJ 19 C9 99 
@8B1:02 FG 22 C9 G4 FG 2B C9 E3 
@8B9:08 D@ 95 AD BA 16 C9 BC D7 
@8Cl:F@ 8E 20 9C OB 4C 51 G8 EF 
@8C9:AD GB 16 C9 G1 FG 81 26 Cl 
@8D1:F5 OB 4C 51 @8 AD GB 16 61 
G8D9:C9 G8 FG 16 26 D6 BB 4C AE 
@8E1:51 68 AD GA 16 C9 G1 FO BD 
G8E9:03 26 B7 OB 4C 51 G8 60 43 
G@8F1:AD 11 D@ 29 EF 8D 1l DO 72 
G8F9:A2 3F BD B4 13 9D C@ 37 FS 
6961:A9 FF 9D 86 63 BD F3 13 AD 
0969:9D 49 63 BD 33 14 9D CO 1C 
G911:02 CA 10 E6 A2 87 BD 73 67 
9919:14 9D F8 67 BD 7B 14 9D CD 
6921:27 DG CA 10 Fl A2 OF BD 4B 
6929:83 14 9D OG D@ CA 10 F7 7F 
@931:A2 FF AD 53 15 DG G2 A2 12 
G939:1F 8E 15 DG A2 G6 8E 17 8F 
0941:D8 8E 1B DG 8E 10 DO AY CF 
@949:7F 8D GD DC A5 Gl 29 FB 6D 
G951:85 G1 AI GG 85 F9 85 FB B6 
9959:85 FD A9 D@ 85 FA AY EG 3C 
9961:85 FC A9 38 85 FE AS FB 9D 
9969:38 E5 F9 A8 AS FC E5 FA C2 
@971:AA A5 FA C5 FE 99 @8 D@ 19 
6979:30 AS F9 C5 FD BO 2A 8A 3A 
9981:18 65 FE 85 FE 98 38 ES El 
0989:FB FO G9 98 G2 C6 FC 49 6E 
G991:FF 18 69 61 85 FB E8 Bl 86 
9999:FB 91 FD 88 C@ FF D@ F7 FS 
99A1:C6 FC C6 FE CA DO FO FO 8B 
G9A9:2A 98 18 65 F9 85 F9 BO DA 
G9B1:02 C6 FA 98 18 65 FD 85 37 
G9B9:FD BO G2 C6 FE E8 98 49 B9 
G9C1:FF A8 C8 FG G7 Bl F9 91 AA 
G9C9:FD C8 DG F9 E6 FE E6 FA C2 


G9F1:FE A2 G7 9D 38 3F EG @7 6E 
SEPTEMBER 1992 COMPUTE 


PROGRAMS 


DQ2oneansoao 
9 
Qa 
ro) 
i} 
i) 
pe 
is, 
3 
@ 
o 
2 
5 


GA59:86 62 A2 BA 26 B7 GA 
GA61:D0 FA A9 G4 8D 86 G2 
GA69:B7 GA AO BD 26 D2 FF 
GA71:D2 FF 88 D@ D5 26 AC 
GA79:A9 G4 8D 86 62 A2 GC 
GA81:B7 GA CA DO FA AD 11 
GA89:89 16 8D 11 DG AD FC 
GA91:12 20 1E AB AS BD AG 
GA99:20 1E AB A2 15 AG G6 
GAA1:20 FO FF AQ 6B AG 13 
GAA9:1E AB 6G A2 B84 AD 20 
QAB1:D2 FF CA DO FA 64 48 
GAB9:48 98 48 AQ Fl AG 12 
GAC1:1E AB 68 A8 68 AA 68 
GAC9:A9 8G A2 8C CA 9D A7 
GAD1:DG FA A2 47 AD G6 38 
GAD9:01 AG BC 9D 17 16 CA 
@AE1:65 88 DO F7 16 FG A2 
GAE9:AG G5 98 BA BA BA BA 
GOAF1:17 16 9D 17 16 CA 36 
GAF9:88 10 EF 30 EB A2 @5 
@BG1:0D BD 17 16 48 B9 17 
GBG9:9D 17 16 68 99 17 16 
0B11:18 69 6D A8 CA D@ EA 
OB19:FF 86 62 26 El GC A2 
@B21:20 9C 6B CA DO FA 26 
GB29:8C A2 G7 20 D6 GB CA 
@B31:FA 26 El @C A2 GB 20 
9B39:0B CA D@ FA 28 El GC 
9341:04 26 F5 GB CA D@ FA 
9B49:05 26 9C GB CA DG FA 
@B51:El GC 26 9C OB 206 D6 
GB59:20 El OC 26 FS GB A2 
OB61:AG0 1E 18 20 FO FF AG 
@B69:A9 6B 28 1E AB E6 62 
@B71:86 8D 18 D4 8D GE D4 
OB79:GF D4 8D 12 D4 A2 41 
0B81:1B D4 29 7F C9 41 BO 
@B89:A8 BY 1D 16 48 BD 1D 
@B91:99 1D 16 68 9D 1D 16 
@B99:106 ES 69 EE BA 16 E6 
@BA1:D@ G2 E6 FC E6 FB DG 
@BA9:E6 FC E6 BS AD G6 DG 
@BB1:69 186 8D 6G DG 6G CE 
@BB9:16 A5 FB D@ G2 C6 FC 
@BC1:FB A5 FB D@ G2 C6 FC 
@BC9:FB C6 B5 AD 68 DG 38 
@BD1:106 8D G8 D@ 60 EE OB 
@BD9:A5 FB 18 69 50 85 FB 
@BE1:62 E6 FC A5 B5 18 69 
0BE9:85 B5 AD G1 DG 18 69 
GBF1:8D G1 DG 66 CE OB 16 
OBF9:FB 38 E9 56 85 FB BO 
@CG1:C6 FC AS BS 38 EY GE 
@CG9:B5 AD 61 DG 38 E9 16 
GC1l1:01 D@ 60 AS FB 48 AS 
@C19:48 A9 GG 85 FB AQ G6 
@C21:FC AE GE 16 BD 17 16 


G-26 COMPUTE SEPTEMBER 1992 


9C29:96 
6C31:66 
0C39:B9 
9C41:16 
9C49:29 
@C51:8D 
@C59:A9 
@C61:A4 
6C69:B9 
90C71:16 
6C79:D1 
GC81:81 
@C89:CD 
0C91:4F 
@c99:11 
@CA1:16 
@CA9:C9 
GCB1:14 
@CB9:16 
6CC1:AD 
GCC9:38 
@CD1:13 
@CD9:FO 


COUBANVOHOOCHAD 


6D41:04 
@D49:FD 
@D51:D4 
GD59:CA 
6D61:D8 
0D69:86 
GD71:26 
6D79:48 
6D81:67 
GDB9ZAA 
@D91:86 
@D99:91 
ODA1:28 
GDA9:91 
@DB1:18 
GDB9:4A 
GODC1:AG 
GDC9:C8B 
ODD1:19 
@DD9:8D 
@DE1:8D 
GDE9: 86 
ODF1:15 
GDF9:66 
@EO1:AD 
GEG9:A9 
GE1L:AE 
GE19:51 
GE21:16 
GE29:A2 
GE31:15 
GE39:5A 
GE41:05 
GE49:8E 
GE51:48 


68 
FF 
16 
GE 
8D 
16 
8D 
BO 
16 
Dl 
AD 
16 
16 
G2 
cg 
63 
DG 
(of) 
G1 
16 
13 
38 
Ag 
15 
66 
96 
G4 
86 
26 
9D 
A? 
AS 
D4 
D4 
8D 
A2 
Da 
32 
FA 
26 
Ag 
12 
ED 
Ag 
C1) 
29 
69 
1F 
AS 
D4 
4A 
91 
FD 
CE 
16 
16 
13 
29 
14 
16 
8D 
16 
CA 
Ag 
8E 
6E 
FO 
16 
G2 
E8 


FB 
BS 
16 
48 
FO 
16 
16 
@D 
BS 
26 
Ag 
16 
DG 
AD 
13 
16 
AD 
13 
gc 
97 
AD 
G1 
66 
16 
8D 
AG 
ag 
AE 
16 
17 
EE 
OF 
D4 
D4 
8D 
DG 
04 
FD 
04 
8D 
Ag 
Ag 
BO 
68 
AG 
41 
AG 
c8 
FC 
FO 
12 
FD 
66 
GE 
i) 
DO 
AD 
DO 
48 
68 
66 
4c 
SF 
98 
96 
DD 
FO 
a4 
99 
4B 


GE59:0E 
GE61:FF 
GE69:64 
GE71:28 
GE79:D4 
GE81:AG 
GE89:8E 
GE91:20 
GE99:1E 
GEA1L:CE 
GEA9:CE 
GEB1:A2 
GEB9:8D 
GEC1:16 
GEC9:DG 
G@ED1:D0 
GED9:0D 
@EE1:61 
GEE9: 89 
GEFL:AG 
GEF9:DO 
GFO1:0D 
GFO9:CA 
GF11:15 
GF19:D6 
@F21:CA 
GF29:04 
GF31:69 
GF39:A2 
OF41:A9 
GF49:56 
GFS1:AE 
GF59:00 
GF61:56 
@F69:15 
GF71:05 
GF79:15 
GF81:2D 
OF89:D4 
GF91:8D 
GF99:A2 
GFA1L:D9 
OFA9:64 
OFB1:F8 
GFB9:8D 
@FC1:AE 
GPC9: GF 
GFD1:GF 
G@FD9:9D 
GFE1:8D 
GFE9:DG 
GFF1:DG 
OFF9:16 
1661:69 
1609:12 
1611:62 
1619:84 
i621:8D 
10629:A9 
1631:65 
1639:21 
1641:26 


GA 
20 
8D 
8D 
AQ 
ao 
G4 
FO 
AB 
Go 
G1 
93 
gc 
De 
FG 
4c 
16 
De 
DB 
GA 
F8 
16 
De 
FO 
Ag 
16 
8D 
G3 
BF 
15 
15 
56 
37 
15 
8D 
ag 
66 
8D 
ag 
@1 
c8 
F8 
AG 
Ag 
DA 
16 
8D 
CA 
FF 
15 
FD 
Fl 
16 
18 
26 
AG 
AG 
18 
c3 
D4 
8D 
8E 


cs 
OA 
D4 
D4 
8D 
DB 
AG 
ag 
39 
A2 
CA 
06 
8D 
AE 
EE 
GE 
14 
09 
Fl 
FE 
6c 
D3 
88 
EE 
A2 
AD 
DG 
ol 
1s) 
57 
55 
9D 
9D 
57 
15 
8D 
OF 
D4 
8D 
Ag 
15 
oS 
88 
8D 
ag 
18 
OF 
EF 
CA 
A2 
Do 
9c 
7B 
i) 
AB 
18 
20 
Ag 
8O 
24 
D4 
D4 


1689:F9 
1691:D90 
1699217 
16A1:72 
16A9: 20 
16B1:BD 
16B9:FA 
16C1:DE 
1009: 48 
16D1:C9 
16D9:D8 
1GE1:AB 
1GE9:26 
1GF1:58 
16F9:A8 
1101:6D 
1169:15 
1111:96 
1119:6D 
1121:D98 
1129:16 
1131:16 
1139:38 
1141:68 
1149:cC 
1151:D2 
1159:68 
1161:A2 
1169:C9 
1171:CA 
1179:8D 
1181:A9 
1189:@1 
1191:D2 
1199:32 
11A1:A2 
11A9:1B 
11B1:29 
11B9:GE 
11C1:38 
11C9:1E 
11D1:6D 
11D9:AA 
11E1:8E 
11£9:16 
11F1:D0 
L1F9:ED 
1261:8D 
1269:B9 
1211:48 
1219:FF 
1221:12 
1229:8A 
1231:A9 
1239:8E 
1241:16 
1249:15 
1251:D6 
1259:0D 
1261:E0 
1269: GF 
1271:16 
1279:16 
1281:41 
1289:52 
1291:2Aa 
1299:56 
12A1:1D 
12A9:46 
12B1:53 


12B9:05 
12C1:26 
12€9:49 
12D1:26 
12D9:41 
12£1:11 
12E9:BB 
12F1:12 
12F9:91 
1361:91 
1369:91 
1311:BE 
1319:9D 
1321:26 
1329:9D 
1331:92 
1339:12 
1341:9D 
1349:65 
1351:9D 
1359:9D 
1361:11 
1369:BD 
1371241 
1379:26 
1381:1D 
1389:45 
1391:54 
1399:1D 
13A1:4C 
13A9:26 
13B1:43 
13B9:90 
13C1:16 
13C9:15 
13D1:89 
13D9:E6 
13E1:86 
13E9:08 
13F1:06 
13F9:08 
1461:66 
1469:38 
1411:43 
1419:68 
1421:16 
1429:86 
1431:06 
1439:08 
1441:69 
1449:44 
1451:AC 
1459:66 
1461:28 
1469:68 
1471:68 
1479:DD 
1481:62 
1489:68 
1491:18 
1499:E8 
14A1:3E 
14A9:FG 


14C9:E8 
14D1:2E 
14D9:FE 
14E1:7E 


G6 


E7 
CE 
FC 
FE 


14E9:FC F8 FC FE FE FE FE 7E CE 
14F1:7E 3E FO F8 F8 F4 ED CO CE 
14F9:7F G6 GE GE G6 12 8A CE EG 
1501:FC 9G FG CO 98 CF E7 FF A7 
1509:7F GG 1B 06 32 E6 CE FE EG 
1511:FC 66 FO El E2 EG Fl F9 6E 
1519:7F 0G 1E GE 8E 8E 1E 3E DO 
1521:FC @@ EG EG FG EE FF FF 37 
1529:7F @@ GE GE 1E EE FE FE 5F 
1531:FC @@ El Dl AQ DS EB E7 A7 
1539:7F @@ FE FE FE FE FE FE 53 
1541:FC @@ FB FE F3 C® FF FF FB 
1549:7F 66 BE FE 9E @6 FE FE 05 
1551:FC GG GG 6E GG GG GG BB ED 
1559:08 1D 2B 39 47 55 63 1A 34 
1561:28 36 44 52 60 GG GA 1E 18 
1569:5A FA 38 206 26 20 26 28 69 
1571:08 93 G1 65 G7 BD GE D3 4D 
1579:48 41 4C 4C 26 57 45 2E 7D 
1581:2E 2E G3 GD G3 20 9E 46 9B 
1589:31 26 2D 26 41 54 54 45 45 
1591:4D 50 54 20 54 4F 20 53 76 
1599:4F 4C 56 45 2G 54 48 45 C5 
15A1:20 56 55 5A 5A 4C 45 3F GE 
15A9:63 GD G8 26 97 20 G1 GS 5B 
15B1:2D 26 4F 52 20 2D G3 GD 52 
15B9:G3 26 9E 46 33 2G 2D 26 3A 
15C1:5@ 4C 41 59 20 41 20 4E 79 
2D 59 52 45 53 53 55 89 
45 20 56 52 41 43 54 Fl 
43 45 3F 13 @D 61 05 EY 
26 C4 26 52 26 49 20 74 
2G 45 26 4C 20 4C 20 8E 
28 27 26 53 2G 20 26 27 
2G 49 26 4C 26 45 20 47 
26 4D 26 41 86 86 GG 91 


ORrPaOAONN 


1661:4 


Arthur Moore is the author of Sammy 
Seal (February/March 1992). He says 
he still enjoys his 64 and 128 after 
eight years of use. He lives in Orlando, 
Florida. 


CHARACTER DESIGNER 


By Daniel Lightner 

Character Designer is a utility program 
that lets you create your own characters 
and set up animation sequences. CD al- 
so has an 80 x 64 pixel sketch pad that 
lets you create designs, characters, or pic- 
tures. You can then place these items in 
a sequential file for use elsewhere. You 
can also place character shapes on this 
pad to help you set up programmed char- 
acter displays. 


Entering the Program 

Character Designer is written entirely in 
machine language. To enter the pro- 
gram, use MLX, our machine language 
entry program; see “Typing Aids” else- 
where in this section. When MLX 
prompts, respond with the following. 


SEPTEMBER 1992 COMPUTE G-27 


PROGRAMS 


ES SEE ERE PS POT RTE EIST TEN I I PS 


Starting address: 0801 
Ending address: 1B68 


Be sure to save a copy of the program 
before you exit MLX. 


Running the Program 

Character Designer loads and runs 
like a BASIC program. To move the 
pointer, use a joystick in port 2 or use 
the keyboard cursor keys. 


Workscreen 

You'll notice that CD's screen is divid- 
ed into various sections, with copyright 
information in the upper right-hand cor- 
ner. Clear this window and start the pro- 
gram by pressing the space bar. 

At the top left side of the screen 
there's a small square sprite; this is the 
program's pointer. First, let's move it 
down the screen to near the bottom 
where you can see Commodore's stan- 
dard uppercase graphic character set. 
Press the fire button if you're using a 
joystick; otherwise, press f7 as you cur- 
sor along the alphabet. Watch the ed- 
iting window in the upper left corner of 
the screen. These rows of characters 
are where you pick up characters for ed- 
iting simply by pressing the fire button 
or f7, Notice that this window extends 
upward at a point near the center. 


Edit a Character 

Use the above steps to find the up- 
arrow A character and place it in the ed- 
iting window. Be sure to release the 
fire button when you see the character 
in the window. 

Move the pointer back to the area la- 
beled as the editing window. This area 
is divided into three parts. On the left 
is the window that contains the pixel pat- 
terns for the character being edited. 

The center window contains an op- 
tions menu. Notice that each item in 
this menu is preceded by a round dot. 
Place the pointer on a dot when you 
wish to choose one of these options. 
Move to one of the items on the menu 
and press the fire button or f7. Experi- 
ment with all of the options. 

Notice the window to the right as 
you enter the different options. This win- 
dow contains six rows of the selected 
character and displays four more char- 
acters below separated by spaces. 
This display lets you see exactly what 


G-28 COMPUTE SEPTEMBER 1992 


the edited character looks like as 
soon as you make any changes. 

Now press the D key and look at the 
Edit window. This is the character's da- 
ta. Now press the space bar. 

Next move the pointer back into the 
window that contains the pixel patterns 
and press the Clr/Home key. The win- 
dow should clear. Press the fire button 
and watch what happens to the pixel 
under the pointer. If you continue to 
hold the fire button, the pixel will tog- 
gle back off again. Remember, if 
you're using the keyboard, function key 
{7 is the same as the fire button. 


Using the Buffer 

Now edit a character or create one of 
your own. When you have finished, 
move over to the window that contains 
the six rows of characters and press 
the fire button. Look in the Buffer win- 
dow. It should now contain the same im- 
age as the Edit window. 

If you create another character or 
pick one up out of the character set, 
you'll notice that the buffer still holds 
the original character. Next to the buff- 
er is another window that contains 
three rows of the characters that are in 
the buffer. Move to this window and 
press the fire button. The buffer char- 
acter reappears in the’ Edit window. 
Whenever you place a new character 
in the buffer, the previous character is 
overwritten. The same applies when 
you place a character in the Edit win- 
dow. There are several places, 
though, where you can store charac- 
ters and keep them safe. 


Moving Characters 

CD has two function keys that are pro- 
grammed to pick up and place charac- 
ters. These keys are f1 and f8. The first 
One picks up a character, and the sec- 
ond one places it elsewhere on the 
screen. 

You can use these two keys almost 
anywhere on the screen. These func- 
tions are useful when designing text 
characters. You can, for example, de- 
sign the letter A and place it anywhere 
you see the letter A on the screen (oth- 
er than in the Sketch window and on 
the Enter line), and it will change all the 
A’s in the text. 

You can edit or create 95 different 
characters and place them almost any- 


where on the screen until you're ready 
to save them. To save your edited char- 
acters, you must place them on the 
Enter line. Move the pointer in front of 
the word ENTER to the < character 
and press the fire button. Find the sev- 
en characters that make up the word 
COMPUTE. Now move over to the > 
character and press the fire button 
again. The letters scroll left and right 
through the frames. You can enter char- 
acters here simply by moving to one of 
the enclosed characters and pressing 
the fire button. 

After you have filled the first seven 
spaces, scroll seven more onto the 
screen. When you save characters, CD 
will always save the first seven charac- 
ter spaces even if you haven't entered 
that many. Before saving, scroll the En- 
ter line so that the last character that 
you wish to save is the last (far right) 
character in the line. 

Enter some characters. If you wish 
to clear the Enter line, move to one of 
the seven spaces and press the Clr/ 
Home key. We'll discuss more about 
loading and saving later. 


Sketch Window 

CD has a 10 x 8 character Sketch 
window. Here characters can be ar- 
rayed to form larger pictures, or you 
can use the pad as a temporary stor- 
age area. Edited characters can be 
placed in this window with the press of 
the fire button. The Clr/Home key will 
clear this entire window as well. 

The window can be used to make 
sketches also. Move the pointer to the 
round ball in front of the word 
SKETCH and press the fire button. Did 
you notice that the Command line fi- 
nally did something? It now indicates 
that you are in Sketch mode. Look in 
the upper left corner of the Sketch win- 
dow. You can see a single pixel blink- 
ing rapidly. With the cursor keys or joys- 
tick, move the pixel around the win- 
dow. Pressing the fire button will lock 
the pixel on, allowing you to draw with 
it. If you wish to erase with it, press f5 
and continue. Function key f5 will tog- 
gle the On and Off settings while in 
Sketch mode. 

When you enter the Sketch window, 
the setting is always toggled to On. 
With this feature, you can actually use 
characters to draw a picture. The Crl/ 


Home key will still function in this 
mode. To exit Sketch mode, press the 
Back Arrow key. 


Animation 

On the lower left side of the screen is 
an Animation window. This is the Ani- 
mation Sequence and Speed Control 
window. The Animation window is a ten- 
page tablet with a built- 
in page flipper. 

Previously, when you picked up char- 
acters, you were actually picking up 
the character data only and placing it 
in another area, overwriting the original 
character's data. When you place a 
character in the Animation window, it is 
the actual character. Place the pointer 
on the indicator in front of the words 
PAGE AHEAD and press the fire but- 
ton. This is a useful feature for design- 
ing characters for a game or fancy ti- 
tle screen. 

Move to any character you wish to 
place on the Animation window and 
pick it up. Move back to the place 
where you wish to place the character 
and press the fire button. It's as easy 
as that. Clr/Home will clear the Anima- 
tion window if your pointer is within its 
frame. 

If you continue to press the fire but- 
ton, the setting will toggle to Off again. 
When you have finished, be sure to 
page ahead to be sure that your page 
is entered correctly. The Slower and 
Faster features will allow you to adjust 
the speed of CD's pointer as well as 
the Animation window. 


Command Mode 

Move to the Command indicator and 
press the fire button. You have entered 
the Command mode, Here, as you can 
see, there are four options. To enter a 
command, press the key that corre- 
sponds to that command. The space 
bar will abort Command mode. The Q 
key will return you to BASIC, the S key 
will save a sequential file, and the L 
key will load one. The R for reset will 
put CD back into its starting condition. 
This command will clear all the charac- 
ters that you may have designed. So 
be careful with it. 

To save or load a file, use the prop- 
er key. CD will ask for a filename. En- 
ter the filename and press Return. CD 
works only on disk in drive number 8. 


If you need to see the disk directory 
after you have exited Command 
mode, just press the shift key and the 
$ key. The directory listing can be halt- 
ed and restarted by pressing any key. 


Preferences 

CD offers you the ability to change the 
colors of the screen, border, pointer, 
frames, text, editing character, and pix- 
el on and pixel off characters. This can 
be accomplished by placing the point- 
er over the type of character that you 
wish to alter and pressing the C key. 
CD scrolls through all 16 colors, start- 
ing from the color that is presently on- 
screen. Pressing P will color the point- 
er, B will color the border, S will 
change the screen color, and so on. 


Multi-Color 
CD also supports Multi-Color. To enter 
Multi-Color mode, press the M key. To 
exit, press it again. You'll notice that Mul- 
ti-Color can mess up some of the items 
on the screen. To make them more 
readable, change their color to a color 
value less than 8. The character being 
edited won't show in Multi-Color unless 
it has a color value greater than 7. 
While in Multi-Color, the editing win- 
dow responds differently as well. This 
is because color is represented in 
pairs of bits instead of by each individ- 
ual bit. To choose the bit pattern that 
you wish to use, press f5. The bit pat- 
tern is displayed on the Command 
line. Multi-Color characters are dis- 
played according to the screen color, 
Multi-Color, Multi-Color2, and the char- 
acter color. Multi-Color1 and Multi-Col- 
or2 are adjusted by typing the 1 key or 
the 2 key. When this is done, the col- 
ors are displayed on the Command 
line as well. 


Key Action 

fi Picks up a character 
{3 Puts down a character 
f5 Adjusts pixel pattern 
{7 Fire button alternative 
Cc Character color 

iP Pointer color 

S Screen color 

B Border color 

M Multi-Color mode 

1 Multi-Color4 

2 Multi-Color2 

D Character data 


Shift-$ 
Clr/Home 
Cursor 


Directory 


Clears area 
Moves pointer 


Command Mode 
iS) Save sequential file 
iL. Load sequential file 
R Reset CD 


Q 


Quit to BASIC 


Character Designer 


@861:0B 
9869:37 
9811:26 
@819:3C 
@821:99 
@829:B9 
0831:F7 
0839:2E 
0841:22 
@849:67 
@851:05 
6859: 20 
@861:16 
@869:A2 
0871:16 
@879:A8 
@881:F7 
@889:A5 
@891:E8 
0899:28 
O8A1:A6 
@8A93A5 
@8B1:63 
@8B9:D9 
@8C1:34 
0809: 03 
@8D1:63 
@8D9:34 
@8E1:18 
G8E9:34 
G8F1:03 
O8F9:20 
G@9G1:A7 
@969:26 
6911:66 
6919:85 
@921:FF 
0929:FF 
9931:61 
9939:22 
@941:C6 
G949:A8 
G951:F7 
@959:A9 
G961:F8 
9969:91 
6971:46 
6979:44 
G981:46 
0989:2B 


G9B1:GA 
G9B9:44 


SEPTEMBER 1992 COMPUTE 


68 
i) 
26 
08 
33 
gc 
AQ 
4c 
DD 
cs 
G1 
34 
A2 
G4 
65 
AS 
AS 
F8 
20 
34 
18 
FD 
4c 
1c 
93 
4c 
E6 
63 
69 
@3 
18 
34 
a4 
A7 
48 
FB 
cé6 
co 
58 
AS 
Fs 
BO 
88 
FG 
cé6 
4c 
9E 
26 
F4 
Bl 
1B 
14 
cc 
13 
GA 
F8 


17 
Ul) 
26 
FS 
88 
99 
85 
G1 
B9 
F7 
F9 
FG 
26 
34 
OA 
85 
85 
FFE 
G3 
AG 
FC 
A7 
G1 
63 
08 
G1 
4c 
GA 
a8 
GA 
06 
De 
FG 
FB 
FE 
a4 
ce 
DG 
28 
38 
85 
cé 
FC 
Bl 
16 
G8 
38 
19 
56 
c7 
12 
Ag 
D8 
FB 
BS 
80 


32 


PROGRAMS 


DODOHPA>UDRQODOD 
nN 
Sj 
wa 
a 
3 
> 
ie) 
™ 
s 
ra 
> 
uo 


@A41:E6 1A AQ Al AB 39 26 
GA49:41 51 83 7E 81 78 28 
@A51:GE 64 9F G2 6 FO F2 
GA59:01 97 35 42 48 1B 36 
@A61:23 CD 78 1C 73 39 DD 
GA69:32 37 FE 34 C9 12 FO 
@A71:4C 95 @5 1F C9 1A 4C 
@A79:41 61 DD E9 1A 90 GE 
GA81:GA 20 35 18 20 4E 37 
9A89:08 20 D9 96 B85 20 39 
@A91:69 62 A5 Fl 81 96 GB 
@A99:62 GB DO AF 8D 82 BA 
GAA1:82 9C 9D 82 AB 10 AD 
@AA9:G3 8A 19 D6 BE BG 29 
GAB1:6B F7 @@ 5C 4C 86 16 
GAB9:4B Dl B8 C9 G5 FO BA 
@AC1:4B GE A7 86 7F CF C9 
GAC9:FG D1 C9 29 41 FO 84 
“@AD1:G1 AC 26 96 6C 87 C9 
GAD9:FO 86 F6 GF C9 20 CA 
GAE1:49 7A 11 DO 70 36 Cl 
GAE9:23 68 G1 C7 33 O4 6F 
OAF1:07 OF 26 47 AG FB 12 
GAF9:54 13 80 B6 E4 FO 9D 
@BG1:94 13 26 89 GE 26 09 
9B09:20 3B 14 67 F4 EG @5 
OB11:FF D6 68 82 12 99 4c 
@B19:C9 9D FG GA BO 93 B9 
@B21:C9 24 FO 32 D4 46 E4 
9B29:36 36 8A G1 G2 40 33 
@B31:2@ 5A D6 A4 39 D2 C9 
6B39:F@ CE Cl D6 10 E4 98 
@B41:68 Bl 53 1c 64 9C 82 
@B49:88 DC 29 GF 38 Al 2A 
9B51:GF E5 FD 5B 2A 4A 62 
9B859:32 CD DA 33 C9 O8 FG 
9B61:CG 2E 23 18 FO G5 AD 
OB69:4C 6B 30 78 GB 20 07 
OB71:6@ AG G1 18 43 AC GE 
0B79:82 74 F3 AG 6B 8C CB 
@B81:25 8G 91 21 C8 11 21 
9B89:9D 21 A9 1D 4C 75 GA 
6B91:07 37 26 7C 3A 11 FO 
@B99:5A GF 77 54 4E E4 F4 
@BA1:36 E6 E6 4C 7D GB 4C 
GBA9:5D @6 DE D3 1D AG G1 
@BB1:53 12 C8 4F 49 C4 18 
GBB9:69 DG 94 CC Bl 93 5E 
@BC1:AB 26 2C 31 C9 1F 99 
GBC9:F5 53 60 26 8F C6 8G 
OBD1:91 DE 16 A9 99 4E E7 
GBD9:C3 17 E7 28 C4 9E 87 
@BE1:F@ 4E BC 87 3B AE GF 
GOBE9:E6 68 8C 1B 66 88 GG 


G-30 COMPUTE SEPTEMBER 1992 


67 
gl 
51 
68 
29 
17 
98 
cl 
83 
E8 
Da 
BE 
19 
81 
95 
8D 
El 
6A 
A2 
E3 
7c 
4A 
cg 
96 
DB 
26 
4c 
gc 
45 
12 
27 
AB 
1c 
a4 
3B 
@B 
29 
54 
28 
20 
14 
E4 
GE 
06 
18 
54 
6B 
46 
07 
88 
FQ 
34 
93 
61 
ce 
68 
c8 
68 
1c 
24 
55 
CF 
AS 
83 
2D 
22 
28 
16 
1A 
87 


OBF1:21 
GBF9:A9 
GCG1:23 
9C69:2C 
@C11:79 
8C19:D2 
6C21:18 
@C29:66 
@C31:4C 
9C39:30 
0C41:E3 
GC49:EC 
6C51:66 
0C59:06 
GC61:AE 
GC69:44 
6C71:68 
6C79:6B 
6C81:13 


USADUNSASAAMOCHRBONAGUD 


GD29:A2 
6D31:C2 
@D39:E8 
@D41:E1 
OD49:A9 
@D51:09 
6D59:03 
@D61:17 
GD69:FO 
@D71:DE 
GD79:D3 
6D81:71 
GD89:A3 
@D91:CG 
@D99:86 
@DA1:FD 
ODA9:F3 
@DB1:35 
GDB9:E7 
@DC1:28 
GDC9:87 
@DD1:21 
@DD9:8F 
GDE1:2F 
GDE9:3C 
GDF1:5D 
ODF9:D2 
@EG1:A3 
GEG9:1C 
GE11:EG 
GE19:78 


83 
G6 
EC 
oF 
1E 
E4 
30 
57 
A4 
34 
30 
34 
33 
C6 
81 
38 
26 
El 
96 
82 
c7 
28 
32 
BA 
AS 
74 
29 
FG 
EA 
D3 
46 
c8 
22 
22 
46 
@D 
54 
F7 
@4 
CA 
83 
6C 
DB 
D8 
80 
G6 
48 
15 
52 
79 
67 
BG 
04 
FC 
DG 
EC 
63 
65 
69 
F2 
ce 
72 
1D 
61 
EF 
8B 
76 
07 
6E 
32 


18 
cD 
19 
OF 
16 
68 
83 
E2 
c2 
36 
E9 
74 
D8 
43 
c2 
14 
gc 
ol 
c8 
66 
65 
63 
64 
86 
68 
Ur) 
13 
OL 
1c 
4B 
80 
99 
47 
0B 
88 
BD 
46 
64 
41 
28 
GA 
CA 
B8 
cB 
5D 
84 
1D 
E8 
15 
2A 
ao 
33 
EA 
5B 
2c 
18 
74 
24 
ag 
ic 
E3 
Fl 
78 
22 
16 
co 
9D 
A2 
DA 
18 


@E21:F7 
GE29:6B 
GE31:29 
GE39:50 
GE41:99 
@E49:28 
GE51:66 
GE59:57 
GE61:64 
GE69:76 
GE71:90 
@E79:1C 
GE81:48 
GE89:AC 
OE91:A7 
GE99:64 
BEA1:8A 
GEA9:4C 
GEB1:60 
GEB9:1C 
@EC1:C9 
@EC9:C9 
@ED1:F8 
GED9: 62 
GEE1:4C 
GEE9: 36 
@EF1:11 
GEF9: 32 
OFO1:4F 
OFG9:61 
OF11L:FC 
OF19:24 
GF21:69 
@F29:GD 
OF31:16 
GF39:5C 
@F41:C9 
@F49:C9 
OF51:BG 
OF59:3B 
@F61:29 
GF69:13 
GF71:38 
GF79:01 
OF81:63 
GF89:A2 
GF91:13 
GF99:07 
GOFA1:65 
GFA9:GA 
GFB1:70 
GFB9:81 
OFC1:23 
GFC9:51 
GFD1:20 
GFD9:62 
@FE1:CG 
@FE9:8D 
GFF1:F9 
GOFF9:A3 


1621:6D 
1629:A8 
1631:47 
163 
1641:D2 
1649:19 


26 
05 
chit 
DF 
53 
E6 
6B 
BO 
08 
81 
22 
cD 
26 
11 
80 
8E 
06 
F3 
93 
cg 
54 
64 
Bl 
69 
08 
62 
20 
c2 
FO 
3E 
84 
08 
2D 
85 
2D 
AS 
4E 
55 
81 
05 
OF 
48 
07 
GE 
1c 
6S 
73 
pc 
68 
94 
29 
8D 
DG 
G2 
8E 
34 
GE 
D3 
66 


c3 
42 
DL 
87 
81 
FG 


16 
36 
40 
27 
06 
GE 
c9 
60 
18 
2F 
9B 
co 
40 
14 
AC 
24 
ol 
36 
FO 
1A 
97 
ie} 
26 
6D 
23 
EB4 
76 
cg 
co 
84 
B9 
FE 
G1 
6c 
FB 
12 
16 
53 
4F 
FE 
Dc 
AD 
c3 
86 
27 
1B 
EG 
8c 
95 
15 
AD 
8D 
AD 
24 
FE 
c8 
58 
@1 
ol 


Dl 
7B 
68 
1E 
2c 
11 


1651:E6 
1659:38 
1061:E8 
1669:61 
1671:61 
1679:21 
1681:FC 
1689:99 
1691:21 
1699:3AB 
1GA1:6A 
16A9:4C 
16B1:47 
16B9:67 
16C1:2E 
16C9:8D 
16D1:89 
10D9:88 
10E1:86 
1GE9:A3 
10F1:CC 
1GF9:C9 
1161:Cl 
1169366 
1111:CP 
1119:14 
1121:9D 
1129:E8 
1131:D8 
1139:28 
1141:1A 
1149:96 
1151:3B 
1159:3C 
1161:8C 
1169:1E 
1171:F@ 
1179:F@ 
1181:43 
1189:F9 
1191:13 
1199:61 
LLAL:FA 
11A9:99 
11B1:B6 
11B9:67 
11C1:60 
11C09:D8 
11D1:E2 
11D9:63 
LLEL:AG 
11B£9:1B 
11F1:B9 
11F9:B4 
1261:6F 
1269:4C 


41 
C3 
E6 
FO 
o7 
09 
BB 
AC 
FO 
24 
(ek) 
04 
cD 
De 
12 
CE 
85 
GE 
G1 
8E 
2D 
22 
G2 
08 
51 
61 
pc 
71 
BO 
77 
23 
D9 
46 
43 
A7 
co 
cg 
4G 
7D 
45 
50 
G2 
4D 
69 
1c 
E9 
31 
95 
56 
61 
Ol 
AD 
6D 
4c 
BO 
29 


1239391 
1241:46 
1249:11 
1251:42 
1259:42 
1261:86 
1269: 4C 
1271:1F 
1279:4C 


3B 
co 
61 
28 
43 
32 
14 
79 
c2 


1281:606 
1289:2C 
1291371 
1299:68 
12A1:91 
12A9:EC 
12B1:C4 
12B9:91 
12C1:AD 
12C9:E2 
12D1:69 
12D9:68 
12E1:A9 
12E9:EC 
12F1:67 
12F9:61 
1361:18 
1309:06 
1311:66 
1319:1A 
1321:B1l 


4c 
ip 
BO 
45 
Go 
19) 
41 
B6 
9E 
BG 
ce 
B6 
44 
F8 
1A 
Fl 
AD 
68 
92 
58 
88 


14 
Cl) 
1 
O7 
75 
CB 
2c 
66 
AG 
90 
cl 
OF 
03 
38 
Ci) 
50 
06 
8D 
26 
GE 
AC 


1359:14 


1371: 
1379227 
1381:D8 
1389: 26 
1391:BB 
1399:1D 


06 
D4 
98 
@1 
cg 


B6 
c2 
Bg 
E8 
2F 
BB 
8a 
5E 
FO 


13B9:B4 
13C1:C6 
13C9:FC 
13D1:F4 
13D9:86 
13E1:88 
13£9:61 
13F1:AC 
13F9:2A 
1461:13 
1469:3B 
1411:EE 
1419:44 
1421:19 
1429:A2 
1431:78 
1439:86 
1441:61 
1449367 
1451:36 
1459:62 
1461:66 
1469:40 
1471:A2 
1479:A5 
1481:C@ 
1489:51 
1491:4F 
1499:2D 
14A1:3D 
14A9:FE 


B9 
@D 
FL 
FE 
A? 
76 
3A 
Al 
47 
17 
17 
4c 
76 
29 
35 
80 
FG 
38 
8D 
28 
DG 
68 
38 
4a 
FB 
FG 
17 
80 
44 
11 
Dg 


FC 
iF 
El 
3D 
co 
86 
58 
95 
FF 
D9 
75 
8A 
26 
17 
g3 
81 
96 
18 
4B 
38 
20 
88 
BS 
97 
FD 
2F 
E2 
G4 
cs 
1B 
A2 


86 El 
@9 3C 
2c 71 
12 87 
a9 69 
14 73 
cc 99 
G7 87 
E3 66 
79 99 
8D 3C 
48 AD 
GB 84 
E3 76 
E@® AC 
3D 62 
8D E8 
G2 88 
1A 4C 
£2 66 
AD CO 
El 62 
68 CC 
1D 23 
66 33 
64 1A 
FOG FG 
E@ 67 
FD Bl 
21 91 
FO 62 
E8 EO 
46 58 
48 63 
C9 2A 
Coke) ath 
AQ G1 
09 9 
D1 26 
40 08 
E6 16 
ce 81 
B7 86 
DO FS 
67,18 
@2 62 
06 81 
32 6c 
38 @8 
G5 63 
52 16 
18 26 
79 6D 
BE @9 
63 CF 
38 38 
D7 62 
@5 GC 
c8 cc 
AR Ly 
35 E6 
FB 98 
46 C3 
39 4C 
4C° FC 
GF AS 
G1 BO 
@B 9E 
AS FC 
cD 81 


1c 
71 
24 
79 
8D 
BO 
38 
24 
28 
18 
OE 
E2 
GE 
9c 
76 
16 
Ag 
co 
80 
c3 
DG 
AD 
3D 
16 
93 


DO’ 


ao 
BO 
FD 
FB 
8C 
SF 
i) 
@D 
FO 
FO 
9c 
20 
OL 
50 
62 
5A 
cs 
88 
F3 
Al 
Cr 
4c 
41 
8c 
6F 
66 
51 
E8 
9B 
48 
69 
67 
D6 
57 
22 
ED 
2A 
CE 
14 
22 
1B 
4B 
cs 
61 


14B1:37 
14B9: 46 
14C1:25 
14C9:Dd 
14D1:AD 
14D9:C9 
14E1:72 
14E9:B9 
L4F1:5C 
14F9:18 
1561:C9 
1569:CC 
1511:B9 
1519:2A 
1521:5B 
1529:6C 
1531:D0 
1539:45 
1541: 43 
1549:C9 
1551:C9 
1559:FO 
1561: 26 
1569:62 
1571:61 
1579:AG 
1581:8D 
1589:12 
1591:66 
1599:E0 
15A1:59 
15A9:C8 
15Bl:Fl 
15B9:0A 
15C1:6C 
15C9:21 
15D1:9D 
15D9:B9 
15E1:61 
15E9:60 
15F1:68 
15F9:4C 
1661:74 
1609:GA 
1611:4D 
1619:8D 
1621:26 
1629:68 
1631:99 
1639:12 
1641:65 
1649:1A 
1651:1A 
1659:B2 
1661:C9 
1669:A8 
1671:46 
1679:65 
1681:0F 
1689:E9 
1691:FB 
1699:FD 
16A1:36 
16A9:19 
16B1:FO 
16B9:FG 
16C1:8D 
1609: 21 
16D1:8C 
16D9:C9 


FF 
6F 
EE 
Do 
@D 
ol 
2c 
BO 
C3 
8D 
09 
cB 
38 
c4 
B8 
BC 
OA 
FO 
20 
E9 
El 
cD 
CA 
6A 
23 
38 
4c 
c2 
75 
07 
6B 
03 
6B 
91 
32 
EG 
86 
AA 
80 
AC 
18 
ri) 
OF 
BO 
20 
84 
91 
cg 
96 
51 
05 
21 
1A 
31 
16 
1A 
28 
39 
E8 
17 
D7 
EG 
4B 
26 
B9 
8D 
Ag 
CA 
co 
57 


SEPTEMBER 1992 COMPUTE 


B4 
96 
A5 
FF 
62 
60 
E4 
38 
49 
86 
23 
18 
96 
83 
17 
AE 
64 
38 
ED 
E5 
14 
28 
8B 
ce 
1F 
ol 
10 
A2 
11 
AC 
63 
De 
37 
26 
43 
Ag 
26 
30 
1D 
co 
FA 
a4 
54 
AD 
20 
cg 
BO 
BO 
4c 
3B 
3c 
9E 
43 
66 
07 
34 
47 
74 
6D 
43 
AS 
06 
5c 
24 
29 
Uy) 
AG 
2A 
18 
86 


PROGRAMS 
EET EEE PO SS 


16E1:55 9A D3 AG D2 3G 81 46 7E| 1911:4A 6B 26 43 3B E3 GC 86 7D | 1B41:09 GE 14 7B 11 GC 14 G4 9E 
16E9:D1 51 CO 6G DA 28 4E 41 CO | 1919:06 G1 ES GF 27 1D 3A 3E 9C | 1R49:46 BG 21 20 20 26 G1 GC B84 
16F1:8D 53 06 87 GD BG G2 F@ 4A | 1921:27 2B 13 OC GF 17 9E SC 43 | 1—51:9c 5a 1B 09 G7 G8 14 13 29 
16F9:2B ED 49 AA A3 26 CD BD EG | 1929:90 E2 G9 GG 87 C4 3B CE C9 | 1n59:26 12 G5 13 85 12 16 @5 97 
17G1:A9 26 DG BE 64 F4 FG GF 79 | 1931:49 89 C7 G5 8G 18 G1 G7 G1 | 1n61:04 26 40 G0 GO GG GO GG AD 
1769:16 44 38 8E 7E 8G 34 4C EA | 1939:5 4c G8 G5 Gl G4 C2 A7 97 
1711:1B 64 29 OD @8 45 4C 15 DE | 1941:3C 7A 9E 49 AG 4F 4F 7A 63 jal Li ; i 
1719:1B 26 6F 1B A9 GG C3 85 D6 | 1949:9A Fl 78 88 41 3D 2B a7 D9 ar ek Nat ts Caer ail dani 
1721:86 02 20 C3 FF G0 47 26 FE | 1951:8E A7 GB 26 Gl GE G9 4F B9 Y : 
1729:BA 1A 26 85 1B 4C DB @8 61 | 1959:64 14 G9 OF 63 GB 10 D7 14 
1731:B6 B8 43 FG 8B 26 E4 FF 1F | 1961:85 C4 3E 41 D6 40 11 20 5D 
1739:C9 98 DB F9 6G AS CB C9 G1 | 1969:4F 44 77 31 1E D7 46 3F 71 SMART FORMAT 

1741:49 D@ FA 60 AQ 93 26 D2 D7 | 1971:71 C5 D6 49 73 52 El 61 47 

1749:FF AD CD 83 77 62 FD AD 42 | 1979:07 G3 64 65 G6 G7 G8 G9 26 | By Rustin Ambrose 

1751:CE 62 85 FE A9 3F 85 FB 59 | 1981:0A @B GC GD GE GF 14 11 AB i ili 
1759:A9 86 85 FC 26 C6 12 66 FE | 1989:12 13 14 15 16 17 18 19 B3 Sr ere avelsauily 
1761:8E EC 28 AE 72 EG 06 FG 16 | 1991:1A 1B 1C AG 06 7F 52 £1 D9 | 'Y Program the l hus] 
1769:25 80 86 50 AE 22 G3 E8 FC | 1999:41 1D 65 26 21 22 23 24 5g | Matofa disk in one-third the usual time. 
1771:62 EC C9 62 BG 67 EG 51 E9 | 19A1:25 26 27 28 29 2A 2B 2c cB | Anyone who must format a number of 
1779:B7 @3 4C C9 1B 66 43 C8 14 | 19A9:2D 2E 2F 36 31 32 33 34 D3 disks at one session will appreciate this 
1781:D3 CA 62 AE CB 62 6C 11 C7 | 19B1:35 36 37 38 39 4E 83 27 A7 timesaving feature. 

POSS OSGR2 pO Og BRD SEO ASE RDA ROS || 1989701 NG8ie18 <A89ED.3CcRD- 4791 With another welcome feature, Smart 
1791:62 4C AE 1B 80 7D ES C3 E4 | 19Ccl1:F8 C4 D4 49 41 35 GA 4D ll a ae 
1799:43 A3 58 C8 FG 28 88 43 66 | 19Cc9:01 GD G1 GE CE 22 EG E1 63 | Format eliminates head bumping—that 
17A1:A8 CO 36 42 F@ 11 85 BB SC 19p1:E1 15 67 G2 15 G6 G6 G5 BD | banging noise in your drive that normal- 
17A9:8F 8E 38 2E 3C 76 BA 3C 9A | 19p9:12 26 41 45 35 F1 86 GE 26 | lyoccursatthe start of aconventional for- 
17B1:E4 64 23 63 E3 67 E3 28 B2 | 1951:8F 87 3A GE £6 4B 19 C8 45 | mat. Smart Format was designed to 
17B92C3 BG) ae 36 18 GA 93 BD 96 | 1969708 42 42 46 4D 55 4c 54 BA | Work only with the 1541 drive. 

17C1:8B 8D 83 38 2E 46 66 E3 30] 19F1:49 2D @5 39 7E BG 31 1C EC ‘ 
17C9:A3 38 88 1F 1F EB 21 F8 BE | 19F9:3A 87 60 7A 52 32 FF 60 8E n 
17D1:F8 AE 83 82 63 43 AG 90 BA| 1ag1:26 43 4F 4D 4D 41 4E 44 25 | Entering the Program 

17D9:18 1@ GA 48 C8 10 7E 7E DF | 1Ag9:CA 87 54 45 89 16 38 48 38 | Smart Format is written entirely in BA- 
17E1:7E E8 GA 6G 18 18 eB 96 ze 1A11:GF 86 E2 61 65 AG FF 96 9A | SIC. To help avoid typing errors, use 
17E9:GG EA 83 3A 96 32 FF £3 1a19:@5 1c 9F $C 1B 1F 9E 81 C@ ‘ ; ii 
17E1:E4 65 AG E3 Dl B2 43 93 B1| 1A21:95 96 97 98 99 9A 9B 8g 31 | [he Automatic Proofreader; see “Typ 
17F9:6B CO FG 76 G5 58 78 98 16 | 1A29:AF E7 10 @8 92 G1 7F BF @9 | ing Aids” elsewhere in this section. Be 
1801:02 E8 60 G@ C8 44 73 B2 69 | 1A31:DF EF F7 FB FD FE 14 Fl 16 | Sure to save a copy of the program be- 
1869:E1 69 GC 75 1F 22 27 17 2C | 1A39:81 57 2C 53 2C 52 46 49 3F | fore exiting Proofreader. 

1811258 51 52 53 54 55 56 57 39 | 1a41:4C 86 13 4B 41 4D D8 3F B4 To use Smart Format, simply load 
FELD 2p Bao Se TER ECRCAACSRGGR CABO) || 1A492PE N20 5840 71DNG1=20N9AR145BE I ar aiin it as you would any BASIC pro- 
1821:09 AF 1£ 44 4E 2E 5A 5B @5 | 1a51:52 89 53 2D 53 41 56 45 DF Th DATA 
1829:5C 5D 5E 5F 68 61 62 63 51 | 1A59:26 4c 2D 4c 4F 41 44 26 43 | Oram. Ihe program uses A state- 
1831:FC F8 C9 86 15 186 17 C7 9E |} 1A61:52 2D 52 45 53 16 F6 27 Bg | Ments to send custom machine lan- 
27 64 65 66 67 68 69 2F | 1A69:26 51 2D 51 55 FD FF 44 A3 | guage routines to the drive. 

6B 6C 6D F5 Fl 93 @D 91 1A71:A@ GF 41 79 DA GG GO O6 56 

ED 42 25 86 71 52 El 6B | 1A79:04 G2 GE 27 GB G1 G2 G2 6C Why It’s Faster 

6F 74 71 72 73 74 75 79 | 1A81:6D 6D E6 82 6D 6C 6C 42 FC : an F 
77 C7 4F 36 GC G5 66 82 | 1A89:25 20 56 41 54 54 45 52 47 | Formatting a disk is usually done with 
1861:FC FE 96 1A 27 78 79 7A BA | 1A91:46 26 FF FF C3 99 9F 9F 58 | the NEW command, which is written 
1869:7B 7C 7D 7E 7F 86 81 F7 G7 | 1A99:99 C3 FF 18 78 68 8@ a8 1c |} OPEN1S, 8, 15,"NO: DISK NAME,/D": 
1871:F1 93 GE 8F ED 81 1c 4F 37 | 1AA1:AG 2 & Mi 2 os - 2 z CLOSE15. This type of formatting usu- 
1879:20 4E 4E 50 3D 82 83 84 9B | 1AA9:87 GF 7E 

1881:85 86 87 88 89 8A 8B 19 36 | 1AB1:43 48 20 4D 4F 44 45 FF 88 URE eee A 
1889:3F E9 FG GF 14 61 2B 1B FB | 1AB9:24 46 7E 4E 1D 87 44 41 95 | ! r d pent calc 
1891:66 44 G2 EC 8C 8D 8E 8F 59 | 1AC1:5D 48 64 78 64 67 D8 15 52 | ing the optimal size of the disk’s inter- 
1899:96 91 92 93 94 95 E3 8F 54 | 1AC9:GB C5 54 13 3C G6 1B 12 F2 | sector gaps. 

18A1:68 A2 G1 48 C7 12 @5 16 45 1¢ 12 13 8D ae a Be The inter-sector gaps are strings of 
18A9:98 25 13 65 D1 15 @C 14 31] 1aD9:49 B OC Dg ic Ae 

18B1:01 DB 1F 26 BG G3 9C 9D E4| 1AE1:12 07 8D 44 1C 38 20 Bl 8A oor pe peceye eae aaced to the 
18B9:9E 9F 70 3E 55 78 BG G5 G6 | 1AE9:11 SD A8 D5 GE C3 BG 21 72 9g ig. 
18C1:EC G8 GB 5@ 78 24 G4 EC 1A | 1AF1:40 The gap areas are never used by the 
18C9:78 CA 26 G9 G1 12 G1 G3 D2 drive but rather act as padding be- 
18D1:41 A7 G5 G4 G9 14 4c G2 AG tween sectors of a track. The optimal 
18D9:67 26 17 G9 BE B4 AG GS DB gap size depends partly on the rotation- 
18E1:Al @C D5 6B G5 14 G3 G8 D7 al speed of the drive 

18E9:F6 69 C3 E3 AG 8E 85 3A 2B | 1B19:65 78 84 26 40 64 ES G8 1A , arive. F 
18F1:84 32 G6 32 86 EG 29 3C EA | 1B21:34 62 EG GB D1 5G 16 19 17 Commodore's Disk Operating Sys- 
18F9:26 3E 26 G5 GE DB 29 E3 34 | 1B29:D0 CE 86 41 31 39 39 32 73 | tem (DOS) repeats a complex algo- 
1961:61 C3 £3 AG GE 9D 39 3E F2| 1B31:39 Bl G3 GF BD 77 14 G5 35 | rithm on each track to calculate the 
1969:33 3C 1B BE 4A 39 a8 42 61 | 1B39:40 97 16 15 G2 2B 99 GC AC | best gap size. The time-consuming 


G-32 COMPUTE SEPTEMBER 1992 


part of the algorithm compensates for 
small changes in drive speed that can 
occur from track to track. Testing 
shows, however, that drive speeds 
don't vary enough during the short 
time of the NEW command to make a 
significant difference in the gap calcu- 
lations. As a result, there's no good rea- 
son to repeat the algorithm on every 
track on a disk. 

Smart Format uses the DOS algo- 
rithm only on track 1. The gap length 
for track 1 is then used to calculate the 
gaps for all other tracks. 

Smart Format also improves the effi- 
ciency of the routine that clears a 
track prior to formatting. The combined 
effect of these changes reduces exe- 
cution time to about 28 seconds. User 
group librarians or anyone else who 
must format a number of disks during 
one computing session will appreciate 
this faster procedure. 


Eliminating the Bump 
When you format a disk using the con- 
ventional command, you probably 
hear a banging noise coming from the 
drive. This banging sound at the start 
of formatting is caused by the drive 
read/write head stepping outward an 
excessive number of times. The regu- 
lar format routines do this to guarantee 
that formatting begins on track 1, the 
outermost track. The bump can contrib- 
ute to alignment problems and should 
be avoided whenever possible. Smart 
Format uses the drive's internal track 
counter to move the read/write head 
precisely to track 1 without the bump. 
If the drive hasn’t been used since 
power-up, the internal track counter 
will need to be initialized. Should 
Smart Format detect this situation, it 
will ask the user to insert any formatted 
disk. The track counter is then updated 
by reading the track number from the 
formatted disk using the INITIALIZE 
command. 


Other Details 

Smart Format does all of the standard 
error checking. This includes a full verifi- 
cation of every formatted track. If an er- 
ror is detected, the program will at- 
tempt to correct it up to ten times be- 
fore giving up. Smart Formats final dis- 
play shows the number of retries re- 
quired (usually zero). 


The final display also indicates four 
inter-sector gap lengths (in bytes) 
used during the format. Each gap val- 
ue applies to an entire zone of the 
disk. The track number ranges of the 
four zones are 1-17, 18-24, 25-30, 
and 31-35. Drives that rotate at slower 
speeds will produce larger gap values. 

Smart Format makes no permanent 
changes in the DOS, and all drive com- 
mands will function normally. The BA- 
SIC program must be used to execute 
the custom drive routines. 


SMART FORMAT 


JA 106 REM SMART FORMAT BY RUS 
TIN AMBROSE 
REM COPYRIGHT 1992 - CO 
MPUTE PUBLICATIONS INTL 
LTD - ALL RIGHTS RESER 
VED 
REM A$ MUST BE FIRST VA 
RIABLE USED IN PROGRAM 
AS="" ;COS=CHRS (8) :CRS=C 
HRS (13) : VA=PEEK (45) +256 
* PEEK (46) 
POKE (VA+2) , 255: POKE (VA+ 
3) ,O:POKE(VA+4) ,192 
PRINT"SETTING UP. . ." 
FORAD=49176T049375: READ 
X:POKEAD,X:NEXTAD 
POKE53280,0:POKE53281,G 
PRINT" {CLR} {8}{DOWN}";C 
HRS (14) 
PRINT" ***#* ee # eR HR SOMART 
{SHIFT-SPACE}FORMAT V1. 
GReKKK RRR RRM 
PRINTCRSSPC(11)"1541 FA 
ST FORMAT"CRSSPC (12) "WI 
THOUT 'BUMP'" 
PRINTCRSSPC(11)"BY RUST 
IN AMBROSE" 
PRINT"{3 DOWN}ENTER: 
{2 SPACES}DISKETTE NAME 
wD 
PRINT" (NAME CAN HAVE MA 
X OF 16 CHARS," 
PRINT" I.D. MUST BE 2 C 
HARS LONG) ";CR$ 
: INPUTDNS, 
ID$: IF (DNS="")OR(IDS="" 
) THENEND 
LN=LEN (DNS) : IFLN>16THEN 
PRINTCRS"~-NAME TOO LON 
G.":GOTO226 
IFLEN (ID$) <> 2THENPRINTC 
R$"--I.D. NOT 2 CHARACT 
ERS LONG.":GOTO226 
CSS="NG:"+DNS+CHRS (44) + 
IDS+CHRS$ (13) :CL=LEN(CS$ 
) :POKE49175,CL 
FORI1=1TOCL: POKE49151+1 
1,ASC (MID$(CS$,I1,1)+C6 
$) :NEXTI1 
360 : 


CE 110 
RJ 126 
136 


146 


158 
169 


176 
186 


196 


268 


216 


226 


236 
246 


256 


260 


BH 270 


RJ 286 


FP 290 


ED 


QF 
sQ 


HJ 


FS 


EG 


BS 


BX 


XG 


FK 


cP 


KJ 
AG 
XF 
DE 
KS 


Jc 


cc 


XB 


EC 
EP 


QM 


FX 


JQ 


FR 
XF 
AE 
BA 


DJ 


HB 


310 
326 


336 


348 


356 


360 


376 


386 


396 


400 


416 
420 
436 
440 
450 


460 


476 


486 


499 
508 


514 


520 


536 


546 
558 
566 
576 


580 


590 


SEPTEMBER 1992 COMPUTE 


CLOSE15:0PEN15,8,15 
PRINT#15,"M-R"CHRS (34) ; 
COS$:GET#15,T$:IFASC (TS+ 
COS) THEN380 
PRINTCRS"**INTERNAL TRA 
CK COUNTER OF DRIVE NEE 
Ds" : 
PRINT"{2 SPACES}TO BE I 
NITIALIZED." 

PRINT"{2 SPACES}PLEASE 
{SPACE}INSERT ANY FORMA 
TTED DISKETTE.” 
PRINT"{2 SPACES}THE DIS 
KETTE WILL NOT BE AFFEC 
TED**":GOSUB630 
PRINT#15,"I@":GOSUB700: 
GOTO326 
PRINTCRS"**PLACE DISKET 
TE TO BE FORMATTED INTO 
" 


PRINT"{2 SPACES }DRIVE** 
";GOSUB630 

PRINT#15,"M-R"CHRS (33) 7 
CO$:GET#15,WPS:IFASC (WP 


$+CGS) ANDL6THEN430 
PRINTCRS"~-WRITE PROTEC 
T IS ON." 


PRINT"~-REPLACE DISKETT 
E.":GOSUB636:GOTO409 
PRINTCRS"**PLEASE CHECK 
THAT DISKETTE IN" 
PRINT"{2 SPACES}DRIVE S 
HOULD BE FORMATTED." 
PRINT"{2 SPACES}ALL DAT 
A WILL BE DESTROYED!**" 
PRINTCRSSPC(7) "(HIT SPA 
CE BAR TO FORMAT": GOSUB 
640 

PRINT#15, "M-R"CHRS (34) ¢ 
CG$:GET#15,TS:1FASC (TS+ 
CGS) =OTHEN336 
PRINT#15,"M-R"CHRS (3G) 7 
COS:GET#15,WPS$: IF (ASC (W 
PS$+C@$) AND16) =OTHEN416 
PRINTCRS$"--FORMATTING * 
"png", "IDs"! . 4" 
PRINT#15,"M-W"CHRS (28) ; 
COS;CHRS (1) ;COS 
OPEN2,8,2,"#1":PRINT#15 
,"B-P";2;0:PRINT#2,AS;: 
CLOSE2 
PRINT#15,"M-E"CHRS (28) ; 
CHR$ (4) :GOSUB740 
PRINTCRS"DONE! 

{3 SPACES}[I.S. GAPS: " 


PRINT#15,"M-R"CHRS (5) CH 
R$ (6) CHRS (4) 
FORI1=0T03:GET#15,G$:G( 
I1) =ASC (G$+C@S) :NEXTI1 
FORI1=3TOGSTEP~1: PRINTG 
(11) ;:NEXTI1:PRINT"]" 
PRINTSPC(10)"(# OF RE-T 
RIES=:"; 
PRINT#15,"M-R"CHRS (32)C 
HRS (6) :GET#15,ER$:ER=AS 
C(ERS+CGS) 
PRINT1G-ER"]" 


G-33 


PROGRAMS 


SSE RE ESS RT IE SE TET 


RH 666 SI SUL IS e ah DLINER CCFA:D@ DC A2 06 C8 BO 67 62 C5 
aT 7R?**" >GOSUB630 CD@2:C9 GG FO G7 9D 35 G3 EB Cl 
:GOTO220 ; ; Q 

cH 610 : By Danie! Liamnet CbIz:AB 88 88 8C 34 G3 30 40 39 

MH 626 : Here's alittle program that youcan have | Coia:cp aD A7 @2 8D AS o2 AD EL 

SA 630 PRINTCRS$SPC(7)"(HIT spa | funwith by devising a variety of useful ap- | cp22:a8 62 8D AA G2 AD C2 62 3D 
CE BAR TO CONTINUE" plications. DLiner is a utility that can con- | cp2a:8D A7 G2 AD C3 62 8D A8 7B 

SF 646 (ePAcRyERAIaee 'E' TO vert any area of memory into lines of BA- cbe28a2 ap Ba He ep A8 G2 au Ba 
SPACE }EXIT)" SIC data statements. These lines can | CD3A:9D F DasCD AD AS.E 

BK €6y Gorse rees="n"pHENCLosE | then be saved and used just Ike any BA- GRUNT Ae DATOS ee net ee eee 
15:END SIC program data. CD52:A2 GG DD 95 CF FO 06 EB 8B 

QF 679 IFIS<>" "THENG6G DLiner is written in machine language. CD5A:E0 BA DG FG 66 CB CC 34 66 

JA 680 RETURN To enter it, you'll need MLX, our machine | CD62: 63 pe EA AD 34 63 C9 G5 32 

GR 696 : language entry program. See "Typing | CD6A:96 1c AG GO BO 35 63 DO EB 

eee SLIPELEGEHHOTT or nia | AldS” elsewhere in thie section. When | SD/2#28 CF Bd. 03 Ae ect ne peta 

eaerae SE ROREMDET ve Eeco a MLX prompts for the starting and ending | cpg2:ra a3 4c 6E cD 60 EA AS 37 
ISHN aaoat aps addresses, respond with the following. | cpga:ao 8p A7 @2 8D AB G2 AG 52 

KB 72 PRINT"'"E25"" DRACKS"B3 CD92:0 AE 34 63 CA BD 8B CP C4 
$" SECTOR#"E4$:CLOSE15: | Starting address: CCA2 CD9A:8D AA 62 BD 96 CF 8D AB 4E 
END Ending address: CFFE CDA2:02 B9 35 03 8C AC G2 38 D7 

PS 730: r CDAA:E9 36 A8 18 CO GG FO 17 DE 
; CDB2:18 AD A7 @2 6D AA @2 8D 82 

aout eg A aa ae Be sure to save a copy of the program | cpBa:a7 62 AD AB @2 6D AB G2 GA 
Ss Baotegs es) SK before you exit MLX. CDC2:8D AB 62 88 4C AD CD ac 79 
rly , rr, - : A 3 a 

BD 750 DATA2G8,247,160,70,162, To use DLiner, load it with the ,8,1 ex Sees a on oe ca Be 2 pe os 
193,169,132,32,93,4,32, | tension, type NEW, and press Return. EELS Chee AN aakeswanaas 
48,6,166,13 You can then go ahead and load anoth- : 

! CDE2:8D AA 62 AD A7 G2 85 FB 57 

AB 760 DATAL62,238,169,61,32,9 | er program. When you're ready to con- CDEA:AD A8 62 85 FC A9 GG 8D 3c 
SPOUSE OEE vert an area of memory to data state- | CDF2:AB G2 A9 28 8D AE G2 A9 71 

z E ments, simpl e SYS 52386, SA, FA, | CDFA:23 8D AF G2 A9 G1 8D AC BA 

Hae Baprenciern alan Heal GANS thé tena address of the area | CE@2:02 AS 08 8D AD G2 AD 03 BG 
G,6,169,123,141,1,6,169 Sg f CEGA:8D BG 62 A9 G8 BD Bl G2 51 
14,32 you want to convert, and EA is that ar- | cai2:a¢ oo aD BO G2 85 FD AD 90 

HG 786 DATA210,266,76,64,238,1 | ea's ending address. f CE1A:B1 62 85 FE AD AE G2 91 6F 
6 CE a OY 141, To convert the information that ap- 

3,6,162, ears on a screen, for example, type 

AH 796 DATA189, 255, 255,157,48, | Sve 52386, 1024, 2023 and peete. 
6,232, 200,204,3,6,208,2 t Dlinerthee fes 1000 dat 
43,169,96,157 urn. DLiner then creates ata 

AS 800 DATA48,6,96,165,81,16,1 statements, starting with line 9000. Add- 
9,169,6,141,33,6,169,15 | ing a few lines of code to read and 
ee mata 7 poke these same data statements GucotcheaiiGinaecnraaeeceo ca 

KG 818 DATA6,16 6,1 32,6 back into memory will re-create the E62: Fi 
69,1,133,81,160,0,269,5 Le SCH IiIel if is CEG6A:AD AB G2 C9 10 DO DS 26 36 
G,240,13 SEEN CE72:26 CF 4C 14 CE 8D 2F CB B8 

JM 820 DATA2G1,2,268,6,174,38, DLiner can also be used to convert | C7a:82 2 CB A2 69 8E 26 CB 1D 
6,142,4,6,76,251,250,20 machine language code. If you write a | ce82:A6 BGO AD 2E CB DD A8 CF 2¢ 
1,1,246 machine language program, you can | CE8A:AD 2F CB FD A9 CF 90 GF EG 

AX 8306 DATAS2,165,68,74,74,74, | convert it to data statements and either gegeene ae ee Bs ae eB ED Ba ae 
ENP OHSAS Nae ta run the statements with a BASIC load- CEA2:CA FO 10°C9 BG FO G3 8D SD 

RC 846 DATA157,5,6,141,38,6 32 | @f or combine them to run with other | ceaa:2a cB 2c 20 cB 30 @4 AQ A3 

43/12,28,41,31,9 | Subroutines. CEB2:60 FO 05 29 7F 20 BE CE 88 
eo ee ee CEBA:CA 16 C5 60 8C B4 G2 AG 5C 
, : 

RD 85 DATA141,12,28,169,255,1 | DLINER CEC2:09 91 FD 20 CC CE AC B4 36 
41,3,28,169,85,141,1,28 CECA:02 66 18 AS FD 69 Gl 85 FB 
Neaieatanes! (aa RED CCA2:D8 26 7D CF A@ GG A2 GG a7 | CED2:FD AS FE 69 96 85 FE 68 C3 
1162,2, 

CCAA:A9 6G C8 CG FF DG FB AG 1a | CEDA:A5 FB CD A9 G2 FO G3 4c C4 

SOLE EU NOTA HEEL TEE Gall (CORD TGp RRLED CPED ET EAT aD coeam | OHEDT 672 CRAs tectcphaavanien! 7A 
gee CCBA:69 91 C9 GA DG EC AD G6 BE | CBEA:03 4C 67 CE 20 26 CF AQ D9 

Ccc2:2 C9 2C DG 11 AG BO BO 27 es et ae ee os ED ee 3u 3 

Rustin Ambrose's initial goal with ene ies be o aS re a aa a2 oe GFOS:A5 FEU 69" 90 8S OK AS 2D. BE 

Smart Format was to protect his drives CCDA:FE 8C 34°93 88 ac C4 02 cr | CFOA:85 2F 85 31 A5 2E 85 30 1D 

from the excessive head bumping that | ccz2:29 4D cb AD A7 G2 8D C2 97 | CF12:85 32 Ad G@ B9 A4 CF 99 AE 

can occur during formatting. He lives | ccea:g2 aD A8 G2 8D C3 G2 AC 52 CF1A:77 62 cB co ee oh Be Be BG 

in West Allis, Wisconsin. CCF2:C4 62 C8 B9 G7 G2 C9 2c 24 | CF22:C6 4C 66 FE A B 


G-34 COMPUTE SEPTEMBER 1992 


CF2A:62 A9 GB 91 FD 26 CC CE 27 
CF32:A5 FD 8D B® G2 AS FE 8D 13 
CF3A:Bl 62 AD AC 62 85 FD AD 83 
CF42:AD 62 85 FE AD BG @2 91 9F 
CF4A:FD AD Bl 62 C8 91 FD A@ D3 
CF52:96 AD BO G2 85 FD 8D AC 7F 
CF5A:02 AD Bl @2 8D AD 62 85 69 
CF62:FE°A9 G@ 91 FD C8 91 FD 39 
CF6A:AG 6G 26 CC CE 26 CC CE 8A 
CF72:A5 FD 8D B® 62 AS FE 8D 53 
CF7A:Bl 62 68 A@ 66 BO B3 CF A7 
CF82:20 D2 FF C8 CG 4C DB FS 42 
CF8A:66 G1 GA 64 E8 10 BG GB AD 
CF92:60 G3 27 38 31 32 33 34 C7 
CF9A:35 36 37 38 39 36 35 35 OF 
CFA2:33 35 4C 49 53 54 @D Gl 4E 
CFAA:6@ GA 96 64 66 E8 63 16 CC 
CFB2:27 OD 54 48 45 26 44 4C B7 
CFBA:49 4E 45 52 @D 43 4F 50 C4 
CFC2:59 52 49 47°48 54 26 31 46 
CFCA:39 39 32 26 43 4F 4D 50 DF 
CFD2:55 54 45 OD 50 55 42 4C 54 
CFDA:49 43 41 54 49 4F 4E 53 D4 
CFE2:20 49 4B 54 4C 20 4C 54 C3 
CFEA:44 6D 41 4C 4C 206 52 49 AD 
CFF2:47 48 54 53 26 52 45 53 36 
CFFA:45 52 56 45 44 96 69 04 13 


Daniel Lightner is a frequent contribu- 
tor. He lives in Sidney, Montana. 


XLOGIC 


By Richard Penn 

Merge and renumbering utilities all have 
their place, but a good debugger is a 
tool that no programmer should be with- 
out, Although it's not absolutely neces- 
sary for short programs, using one can 
save you a great deal of time when you're 
writing lengthy code. 

XLogic is a BASIC debugging tool 
that's simple enough to be used by nov- 
ices, yet powerful enough to meet the 
needs of even the most demanding pro- 
grammer. It has no gimmicks, only the 
bare essentials—the bare essentials to lo- 
cate and blow any bug off the silicon land- 
scape, that is. 

First, it enhances the LIST command 
to display in color the paths of all GOTO 
statements, IF/THEN statements, and oth- 
er branches. This lets you follow a pro- 
gram's logic at a glance, even if you're 
viewing someone else's program for the 
first time. A description doesn't do justice 
to its power. After using it, you'll feel half- 
blind looking at a conventional listing. 

If you need a closer look at program 
flow, the trace routine shows each line 
and highlights every statement as it ex- 
ecutes. Up to four variables (including ar- 
ray variables) can be displayed inside 


the trace window. The window can be 
placed at the top or at the bottom of 
your screen so that it won't overwrite 
something important. Finally, the speed 
of the trace can be varied, and the code 
can be single-stepped. You can also 
dump all the variables and functions, col- 
or-coded by type, into memory. 


Typing It In 

XLogic is written entirely in machine lan- 
guage. To enter it, you'll need to use 
MLX, our machine language entry pro- 
gram; see “Typing Aids" elsewhere in 
this section. When MLX prompts you, re- 
spond with the values given below. 


Starting address: CO00 
Ending address: CBF7 


When you've finished typing, be sure 
to save a copy of the program before 
exiting MLX. 


Four Commands 

To use XLogic, just follow these simple 
steps. Load the program with a com- 
mand of the following form: LOAD 
“XLOGIC",8,1. Of course, you should 
replace XLOGIC with whatever name 
you used when you saved the XLogic 
data. Type NEW. Activate the program 
with SYS 49152. 

XLogic’s features are easily ac- 
cessed with four new commands that 
work only in direct mode. You're limited 
to one XLogic command per line, 
which can be abbreviated by typing 
the left arrow (€) and the first letter 
(or as many characters after these ini- 
tial two as you like). 

Both “LIST and “TRACE activate 
debugging modes, as opposed to 
most commands that perform an imme- 
diate function. You can program normal- 
ly in either mode. Apart from the en- 
hanced features, you won't even know 
one of these features is on unless you 
list or run a program. 

Only one mode can be used at a 
time, so activating a new mode will re- 
place the current one. Run/Stop-Re- 
store won't disable a mode. To turn off 
either mode, use the “OFF command. 

The command <VAR is always 
available and is unaffected by 
OFF. XLogic itself will remain active 
until you shut off the computer. 

The command LIST turns on 


branch mapping. A branch is any 
point where a BASIC program jumps to 
another line and is done with the 
GOTO, GOSUB, IF/THEN, ON/GOTO, 
or ON/GOSUB commands. 

Most cross-reference utilities print a 
line-number list, which is not very use- 
ful. XLogic highlights branches in col- 
or within the listing so that you can see 
where each branch goes and continue 
programming normally at the same 
time. In this mode, the LIST command 
changes the screen color to black and 
lists everything in light blue, but it 
prints all branches and the lines they ref- 
erence in matching colors. 

For example, let’s look at this simple 
program. 


10 PRINT “‘XLOGIC” 
20 PRINT 
30 FOR T= 1 TO 10: NEXT : GOTO 10 


With “LIST, GOTO 10, all of line 10 
would be listed in white. The rest of the 
program would be light blue. 

The key to reading a colored listing 
is the line number, which is always 
light blue unless some other line branch- 
es to it. Whenever you see a line num- 
ber (and the rest of the line, since 
lines match their line-number color) 
that isn't light blue, you know that 
there's at least one command some- 
where in the program that jumps to 
this line. It's then a simple matter of 
matching up all the branch commands 
of the same color with the line that's 
that color. If all this sounds confusing, 
don't worry; it will become obvious 
when you see it on the screen. 

The 64 has 16 colors, so there's a lim- 
it to how many branches can be 
mapped. Since light blue is the neutral 
color and characters are invisible if 
they're the same color as the screen, 
that leaves 14 free. However, “LIST 
also uses reverse video, so a total of 28 
different branches can be displayed. If 
there are more than 28 branches, the sur- 
plus branches are all highlighted in 
light blue reverse video. So although 
they're still shown, you can't tell different 
jumps apart. This isn’t a serious 
problem, because “LIST only cross- 
references the lines you list. 

If you type LIST alone, the entire pro- 
gram is cross-referenced. But if you 
type a command such as LIST 100- 


SEPTEMBER 1992 COMPUTE G-35 


PROGRAMS 


SL ST IE TL PS I SE TASS TET 


200, only the lines 100-200 are cross- 
referenced, 

Since “LIST cross-references branch- 
es on a first-come-first-served basis, 
don't be surprised if the colors 
change when you're listing different 
groups of lines, Although the colors 
may be different, the program listing is 
still accurate. 

There are two error messages that 
you can get with “LIST. The first is an 
UNDEFINED BRANCH error message 
with the offending line printed beneath. 
This happens when there's a branch 
command with a syntax error some- 
where in the program, such as GOTO 
with a missing line number. Simply cur- 
sor up to the line, correct it, and list 
again. 

It's rare that anyone will see the sec- 
ond error, which occurs when there are 
too many branches. This shouldn't be 
confused with the 28-branch color lim- 
it. Although “LIST is able to display on- 
ly 28 different branches, it can handle 
over 1300 internally. Few programs for 
the 64 need this many branches, but 
©LISTwill inform you if you ever exceed 
this limit! Should that occur, simply list 
smaller groups of lines. 

The command “TRACE turns on 
the execution trace. This mode displays 
a trace window whenever you run a pro- 
gram. Use it to see exactly what a pro- 
gram is doing as it runs and to find out 
when and why variables are changing. 

Also, if you get a syntax error but 
can't tell what's wrong with the line in 
question, “TRACE will show you ex- 
actly where the program stopped. 

The command “TRACE prompts 
you for several settings. If you change 
your mind during this procedure, 
press Run/Stop-Restore to cancel. 
First, it asks you if you want the trace 
window to be at the top or at the bot- 
tom of the screen. This lets you put it 
where it won't overwrite anything impor- 
tant. Next, you're prompted to select 
the execution speed. You have the 
choice of running the program at the 
fastest possible speed (normal), slow- 
er (delay), or slowest, (single step) 
through the code. 

When single-stepping, hit any key 
on the keyboard (hold it down for con- 
tinuous execution) to execute the next 
command. If you single-step a pro- 
gram that waits for a keypress with the 


G-36 COMPUTE SEPTEMBER 1992 


GET command, remember to hold 
down the key the program expects 
when the trace reaches the GET. (It's 
better to avoid single-stepping pro- 
grams with many GET commands.) 

Regardless of which speed you se- 
lect, keep in mind that a traced pro- 
gram runs slower than normal, so hold 
down all keys including Run/Stop until 
they catch. 

You also have the option of display- 
ing up to four variables during the 
trace. To enter the variables, type 
them in the order that you want them to 
appear and separate them with a 
slash (/). An entry such as A/B/C/ 
BOX(A,B,C) is legal and still counts as 
only four variables, since BOX(A,B,C) 
prints only one value. 

If you accidentally enter an illegal var- 
iable and run the program, the trace 
will stop and display an error beside 
the variable it doesn’t understand. If 
this happens, use the “TRACE com- 
mand again to enter the correct varia- 
bles. Also, strings must be less than 36 
characters in length, or they won't fit in- 
side the window. 

To try out the various trace options, 
enter and run this short program. 


10 A=1: B=2: C=3: D=4; E=5: F=6: G=7: H=8: 
GOTO 10 


The command “TRACE uses light 
blue to display the current line and var- 
iables and highlights commands in 
white as they're executed. If these col- 
ors conflict with your program's 
screen color, change it temporarily 
while you debug your program. Also 
note that the LIST command won't 
work properly with “TRACE on. 

The command “VAR dumps all non- 
array variables and functions in mem- 
ory, color-coded by variable type, to 
the screen. Functions are followed by 
the notation FN. 

The command *OFF disables all 
XLogic commands except for “VAR. 


Debugging BASIC with ML 
XLogic is a BASIC debugging tool. If 
your program uses any machine lan- 
guage routines, there might be a mem- 
ory conflict. 

Note that XLogic resides from 49152 
to 52208, downloads and modifies BA- 
SIC ROM, and changes several vec- 


tors. It also uses all of the RAM under- 
neath Kernal ROM and part of the cas- 
sette buffer as work areas. ML is safe 
to use with XLogic, provided that it isn't 
located in any of these potential trou- 
ble spots. 


XLOGIC 


C6G0:4C B8 CA G8 8D 34 63 8E 81 
CGO08:35 G3 8C 36 63 AD 4B G3 42 
C619:D6 46 A2 FF BS OG 9D Fl BA 
CG18:CB CA E@® G2 D@ F6 AD G1 25 
CG26:8D 4B G3 AS 5F 85 FD A5 AB 
CG628:66 85 FE A5 15 8D 48 G3 D7 
CG30:C9 FF D@ G8 AY FE 8D 3F D4 
CG38:63 4C 41 CO AS 14 8D 3F 5A 
C046:63 26 A2 Cl A2 FF BD Fl 3E 
CG48:CB 95 @@ CA EG G2 DG F6 69 
CG56:A9 6G 85 FD A9 FO 85 FE 52 
CG58:A9 6G 8D 3A G3 8D 21 DG 65 
CG6G:A9 BE 8D 86 G2 AD OG 85 9G 
CO68:FB A9 EG 85 FC AG GG CB FO 
CG76:26 DE C@ C9 FF D@ 65 AD 65 
CG78:GE 4C BF CO 88 20 DE Co 5B 
CG86:CD 35 G3 DO G9 CB 2G DE 2E 
CG88:CO CD 34 G3 FO GE A2 G3 9C 
C696:E6 FB DG G2 E6 FC CA DG 5G 
CG98:F7 4C 6D CO C8 24 DE CO 28 
CGAG:C9 GB DB BC AD BE 8D 86 G9 
COA8:62 AY 12 85 C7 4C C2 CB ES 
COBG:C9 GF 96 G7 38 E9 GE A2 85 
C@B8:12 86 C7 AA BD 63 CB 8D A7 
C6CG:86 G62 AD 86 G2 8D 4D G3 OB 
C@C8:A5 C7 8D 4C 63 AD 34 G3 BF 
CODG:AE 35 G3 AC 36 63 28 85 BS 
C6D8:62 86 63 4C Dl BD 78 A2 77 
CGEG:34 86 G1 Bl FB A2 36 86 B6 
CGOE8:61 58 66 G8 8D 37 G3 8E 6B 
COFG:38 G3 8C 39 63 A6 D4 DG Al 
COF8:61 AE 3A 63 EG G1 90 25 OF 
C166:C9 3A D@ 13 AD BG 8D 3A E4 
C108:63 AD 4C 63 85 C7 AD 4D 26 
C110:63 8D 86 62 4c 5A Cl EG 99 
C118:62 DG 3F C9 2C DG G3 20 29 
C120:67 Cl 4¢ 5A Cl 4c 57 C4 AQ 
C128:29 C9 8D FG 25 C9 A7 DG £3 
C136:12 C8 Bl SF C9 26 FG F9 C5 
C138:C9 34 96 1E C9 3A BG 1A 53 
C140:4C 52 Cl C9 91 DB 13 AD F2 
C148:62 8D 3A G3 26 67 Cl 4c 16 
C156:5A Cl A9 G1 8D 3A G3 26 32 
C158:67 Cl AD 37 63 AE 38 G3 6F 
C16G:AC 39 G3 28 4c 1A A7 AO 2F 
C168:06 85 C7 AG GG 78 A2 34 AB 
C176:86 61 Bl FD A2 36 86 @1 89 
C178:58 C9 66 DB BC 
C186:86 62 A9 12 85 C7 4c 9B 9D 
C188:Cl C9 OF 96 67 38 EO GE 45 
C19G6:A2 12 86 C7 AA BD 63 CB 55 
C198:8D 86 62 E6 FD D@ G2 £6 51 


C1C6:3F 63 D@ G3 EE 46 G3 AG GE 
C1C8:66 Bl FD 8D 41 63 C8 Bl AA 
C1DG:FD 8D 42 63 C8 C8 Bl FD F9 


C1D8:CD 
ClE 
C1E8:C8 
C1FG6:AD 
C1F8:AD 
C200:89 
C268:C2 
C210:4C 
C218:43 
C220:F9 
C228: 06 
C236: 43 
C238:A9 
C240:63 
C248:C4 
C250:FD 
C258:Bl 
C260:63 
C268:C9 
C270:61 
C278: 36 
C280:84 
C288:FG 
C299:F@ 
C298:84 
C2AG6:E8 
C2A8:C3 
C2BG:A2 
C2B8:C9 
C2CG:E8 
C2C8:3A 
C200: 20 
C2p8:9D 
C2E6: 63 
C2E8:A7 
C2FG:2C 
C2F8:65 
C360:48 
C368:85 
C310:66 
C318:C8 
C320:C8 
C328:36 
C330:E6 
C338:9B 
C340:C9 
C348:58 
C350:C8 
C358: 3B 
C360:9B 
C368:63 
C376:FC 
C378:3B 
C380:EE 
C388:90 
C390:48 
C398:62 
C3AG:C9 
C3A8:68 
C3BG:84 
C3B8:D8 
C3CG:4B 
C3C8: G3 
C3D6:85 
C3D8:B7 
C3E6:8D 
C3E8:AD 
C3F0:88 
C3F8:66 
C40G:FF 


c8 
4A 
4a 
Do 
cg 
3D 
03 
cg 
20 
63 
@1 
4c 
8D 
AD 
FD 
4c 
26 
FO 
96 
63 
OB 
63 
63 
Ag 
26 
66 
3A 
Bl 
FO 
FO 
84 
E8 
c3 
FO 
4c 
93 
9c 
Bl 
Bl 
Bl 
86 
FC 
co 
EE 
AG 
AD 
63 
cs 
91 
AS 
03 
3B 
05 
G3 
E6 
FO 
BO 
63 
07 
8C 
AS 
7A 
AS 
45 
47 
c8 
A2 
E8 


cg 
Ol 
46 
65 
06 
A7 
FD 
GA 
4c 
cg 
63 
Ag 
AD 
85 
c8 
60 
AD 
0) 
3A 
BL 
FO 
c2 
36 
84 
66 
cg 
9D 
2c 
06 
B2 
Ag 
9D 
c2 
00 
4c 
85 
35 
44 
45 
26 
E6 
03 
56 
A2 
44 
91 
cs 
AG 
FB 
cI) 
AC 
3B 
8D 
63 
Da 
4c 
07 
Bo 
63 
AS 
47 
85 
44 
46 
7B 
cg 
12 
De 


C468:9A 
C410:CB 
C418:F5 
C426:66 
C428:FA 
C436:CB 
C438:4C 
C446:GE 
C448:C9 
C450:89 
C458:CB 
C466:29 
C468:D6 
C478:68 
C478:A9 
C486:03 
C488:8D 
C496:68 
C498:48 
C4AG: 83 
C4A8:9D 
C4BG:AD 
C4B8:20 
C4CG:FB 
C4C8:FG 
C4D0:99 
C4D8:EF 
C4EG:16 
C4E8: 40 
C4FG6:9D 
C4F8:4C 
C566:86 
C568:4C 
C510:88 
C518:A9 
C520:D6 
C528:66 
C536: 28 
C538:CB 
C54G:68 
C548:A5 
C556:03 
C558:A6 
C566:63 
C568:8D 
C570:A5 
C578:AG 
C586: 2B 
C588:FD 
C596:98 
C598:A6 
C5AG:A5 
C5A8:BD 
C5BG:87 
C5B8:A9 
C5CO:EG 
C5C8:FF 
C5DG:FF 
C5D8: 26 
C5E6:78 
C5E8:A9 
C5FO:DO 
C5F8:85 
C6GG:68 
C668:04 
C616:C8 


C636:88 


4c 
26 
Ag 
3 
9A 
Bl 
BD 
c8 
A4 
4c 
FO 
cl 


A2 


48 
37 
Ag 
68 
28 
98 
4c 
Fl 
86 
D2 
gc 
31 
86 
9 
26 
AQ 
48 
3F 
95 
3F 
95 
1l 
FA 
Ag 
96 
07 
8D 
3A 
ag 
38 
Ag 
27 
14 
86 
85 
c8 
91 
AG 
FE 
A6 
cg 
26 
78 
ag 
26 
A6 
96 
1l 
FA 
FC 
Bl 
A2 
4c 
AS 
98 
85 
Ag 


74 
D2 
37 
) 
AG 
FD 
A6 
Bl 
FO 
@1 
07 
4c 
AQ 
AS 
85 
A7 
03 
4c 
48 
isi} 
cB 
G2 
FE 
cg 
cg 
85 
86 
D2 
2D 
DB 
cs 
D9 
cs 
D9 
A2 
A2 
GE 
pul 
E8 
14 
85 
EF 
AS 
17 
@3 
De 
Bl 
FC 
Bl 
FB 
66 
91 
AD 
63 
A6 
99 
1l 
D2 
D3 
F8 
A2 
ag 
AQ 
FB 
G1 
G1 
EB 
48 
FE 
26 


A2 
E8 
Gl 
8D 
Bl 
15 
FD 
co 
4c 
4c 
89 
(eal 
8D 
co 
Ag 
07 
AT 
A7 
3A 
A2 
EO 
4E 
56 
FO 
FG 
4c 
EF 
CA 
48 
EG 
66 
EO 
1l 
EO 
26 
Ag 
80 
6B 
28 
AS 
Ag 
28 
ES 
26 
GE 
AS 
85 
i) 
85 
91 
FD 
4c 
93 
22 
9D 
AQ 
D2 
4c 
Ag 
13 
26 
85 
8D 
OF 
D4 
AQ 
7A 
Dl 
AG 
Dl 


CT) 
cg 
AQ 
07 
FD 
26 
co 
26 
6c 
63 
FO 
AD 
4a 
FF 
1A 
63 
8D 
68 
cg 
FF 
@2 
83 
@3 
11 
3D 
3F 
Ag 
Dg 
67 
28 
BS 
68 
BS 
19 
D2 
2D 
DA 
AQ 
96 
39 
cl 
63 
SF 
63 
8D 
15 
FB 
Bl 
FE 
FB 
91 
AA 
cg 
4c 
oo 
13 
FF 
F2 
G6 
26 
D2 
FB 
86 
cg 
26 
26 
AS 
85 
AA 
c8 


BD 
Cr) 
1A 
63 
85 
13 
cB 
FO 
c4 
C2 
63 
3c 
63 
FO 
8D 
Ag 
09 
48 
FF 
B5 
De 
ag 
cg 
co 
AS 
cs 
11 
FA 
Ag 
98 
bg 
90 
D9 
96 
FF 
9D 
E8 
26 
F8 
85 
8D 
26 
8D 
Ag 
86 
De 
c8 
FB 
AG 
20 
FB 
cs 
62 
52 
G4 
20 
26 
cs 
E8 
D2 
FF 
AQ 
G2 
24 
D2 
26 
FC 
FD 
A4 
coe 


C638:968 
C640:A8 
C648:DG 
C65G:FF 
Cé658:Fl 
C66G:A7 
C668:8D 
C670:DG 
C678:2D 
C680:CO 
C688:00 
C690:BE 
C698:64 
C6AG:A9 
C6A8:56 
C6BG:BE 
C6B8: 07 
C6C0: 63 
C6C8:18 
C6DG:CA 
C6D8:C6 
C6EG:FO 
C6E8:F1l 
C6FG:F6 
C6F8:A8 


C720:28 
C728:F1 


C748:8D 
C758:AD 


F9 
c8 
62 
cs 
8D 
AQ 
18 
12 
91 
28 
FO 
cé6 
E8 
2D 
D8 
cé6 
E8 
cg 
4c 
Ds 
20 
F7 
cB 
AD 
68 
08 
4P 
G2 
co 
4c 
68 
ag 
8D 
Ag 
28 
96 
93 
Ag 


D 66 


C8¢8:19 
C816:FB 
C818: 62 
C820:CB 
C828:F5 
C836:53 
C838:D3 
C840: 63 
C848:C9 
C850:4C 
C858:53 
C860: 26 


79 
63 
83 
AD 
55 
63 
oo 
co 
FO 
4c 
A2 
E8 
27 
@D 
Ag 
51 
D2 
cS 
27 
DG 
6s 
8D 
26 
AQ 
63 
26 
cg 
41 
8D 
@3 
D2 


FE 


SEPTEMBER 1992 COMPUTE 


PROGRAMS 


CB8A8:A9 
C8BG:99 


C8C8:C9 
C8DG:A7 
C8D8:8D 
C8EG:A9 
C8E8:01 
C8FG: 26 
C8F8:A9 
C966:CF 
C968:36 
C916:26 
C918:4Cc 
C92G:41 
C928:8D 
C93G:A5 
C938:A5 
C946:C5 
C948:8D 
C958:03 
C958:63 
C960:86 
C968:96 
C979:67 
C978:88 
C98G:A9 
C988:C9 
C998:D2 
C998:C9 
C9AG:G5 
C9OA8:FE 
C9BG:895 
C9B8:9G 
C9CG8:28 
C9C8:FF 
C9DG: 26 
C9D8:63 
C9EG:D4 
C9E8: G3 
C9OFG: 26 
C9F8:A9 
CAGG:A5 
CAG8:63 
CA16:7B 
CA18:97 
CA26:FC 
CA28: 44 
CA3@:4C 
CA38:AD 
CA4G:CA 
CA48:A2 
CASO:E8 
CAS8:AA 
CA66:85 
CA68:62 
CA76:BD 
CA78:8D 
CA8G:A9 
CA88:27 
CA9G:ED 


G-38 


rea 
AT 
8D 


COMPUTE SEPTEMBER 1992 


CA98:G3 
CAAG@:8D 
CAA8:A9 
CABG: 5B 
CAB8:A9 
CAC@:DC 
CAC8: FE 
CADG:59 


AVSNUuAnnauvnvan 


CBEG:58 
CBE8:49 
CBFG:00 


ag 
08 
Ol 
63 
37 
85 
85 
26 
FF 
8D 
Ag 
@2 
83 
G3 
06 
OF 
59 
45 
46 
41 
4F 
4F 
92 
Ul) 
41 
4c 
12 
26 
@D 
26 
45 
3F 
52 
34 
4c 
2F 
@D 
26 
45 
53 
41 
4c 
53 
1) 


A7 
03 
8D 
Ag 
85 
5F 
5A 
BF 
Ag 
04 
Ol 
G3 
8D 
66 
67 
54 
26 
53 
49 
4E 
52 
58 
4F 
@D 
4c 
41 
53 
53 
44 
56 
53 
@D 
26 
20 
45 
43 
6D 
41 
44 
54 
54 
4F 
41 
1) 


8D 
Ag 
52 
06 
Gl 
ag 
85 
A3 
Ol 
DC 
8D 
Ag 
G4 
GE 
68 
4F 
42 
0D 
4E 
43 
9D 
20 
54 
12 
2c 
59 
92 
54 
49 
41 
26 
1) 
55 
56 
53 
2F 
58 
43 
9D 
26 
45 
47 
42 
Is) 


E4 
63 
8D 
60 
GE 
Lt) 
85 
8D 
Ag 
@5 
29 
63 
8D 
G4 
oc 
41 
43 
44 
42 
52 
54 
12 
3F 
52 
92 
52 
4c 
gD 
41 
42 
4E 
54 
4P 
41 
2F 
OD 
43 
41 
4c 
49 
@D 
44 
6D 
ot) 


Richard Penn is a prolific Commodore 
programmer. He lives in Montreal, Que- 
bec, Canada. 


POLYGONS 


a 


the other possible parameters. 


Typing It In 

Polygons is written entirely in BASIC for 
the 64 or 128 in 64 mode. To help 
avoid typing errors, enter the program 
with The Automatic Proofreader; see 
“Typing Aids” elsewhere in this sec- 
tion. Be sure to save a copy of the pro- 
gram before you exit Proofreader. 


Calculating 

Simply load and run Polygons and 
then answer the prompts. Suppose 
you have an octagon, for example, and 
you know that each of the eight sides 
is 5 inches long. Enter this information, 
and Polygons will compute the diago- 
nal (13.06 inches), the width (12.07 inch- 
es), the area (120.71 square inches), 
and the internal angle (135 degrees). 
If you know any one of these parame- 
ters, Polygons can calculate the oth- 
ers. Of course, diagonals and widths ar- 
en't meaningful for polygons with an 
odd number of sides. 

The mathematics is straightforward 
though probably not of everyday famil- 
iarity. If you do architectural design or 
have a use for plane geometry of this 
level, the program should save you 
many hours of calculation. 


POLYGONS 


AP @ REM COPYRIGHT 1992 -~ COMP 
UTE PUBLICATIONS INTL LTD 
- ALL RIGHTS RESERVED 
5 PRINTCHRS (5) "{CLR} 
{11 SPACES}*** POLYGONS * 
ek 


QB 


16 
26 


FQ 
FK 


PRINTCHRS (158) 
PRINT" {14 SPACES}NEEEEEE 
EEM" 

PRINT"{11 SPACES}A N 

{10 sSPACES}M" 

PRINT"{12 SPACES}YA=INT 


JA 30 


FK 50 


By Rowland Medler 

There have been many programs pub- 
lished for computing the parameters of tri- 
angles, even those that aren't right tri- 
angles, but few if any have been pub- 
lished for polygons with more than three 
sides. In case you don't remember your 
high school geometry, a polygon is any 
closed plane surrounded by three or 
more usually straight sides. 

Polygons works with any multisided fig- 
ure that has four or more sides of equal 
length. If you know one dimension of the 
polygon, this program will compute all 


KC 


JF 


KC 


sD 


KP 


JX 
BD 


BG 


52 


55 


57 


66 


76 


75 


166 


116 


{SPACE}ANGLE T " 

PRINT"AB=DIAGONAL ¥<** W 

IDTH**>T" 

PRINT" {12 SPACES}Y 

{2 SPACES}(A R E A) 1" 

PRINT"{13 SPACES}M 

{16 SPACES}N B" 

PRINT"{14 SPACES}M 

{2 SPACES}SIDE{2 SPACES} 

nN" 

PRINT" {15 SPACES }EEEEEEE 

EB" args 

PRINTCHRS (5) 
INPUT"NUMBER OF SIDES=" 
Ah 
IFSI<4THENPRINT"THIS PR 


HJ 


DS 


JA 


AC 


AE 


QM 


Qu 


126 
136 
149 
158 
166 
17G 
186 
198 
296 
216 
226 
236 
246 
256 


268 


276 


288 


296 


398 


316 


328 
336 
346 


356 
366 
376 


386 


396 


406 


OGRAM REQUIRES 4 OR MOR 
E SIDES.":END 
PRINT"I ALREADY KNOW: ( 


ONE ONLY)" 

PRINT"{16 SPACES}1) SID 
EB" 

PRINT"{16 SPACES}2) WID 
TH" 

PRINT"{16 SPACES}3) DIA 
G." 

PRINT"{16 SPACES}4) ARE 
A" 

INPUT"CATEGORY NUMBER=" 
;CA 


IF CA=(1)THEN220:GOTO19 
0 
IF CA=(2)THEN330:GOTO26 
) 
IF CA=(3)THEN410:GOTO21 
G 


IF CA=(4)THENS1@ 
C=360/SI 

A=(180-C) /2 
INPUT"SIDE DIMENSION 
7SD 

R= (SD/SIN(C/(18G6/])))*S 
IN (A/(186/]) 

IF (SI) /2<>INT(SI/2) THE 
NPRINT"DIAG. AND WIDTH 
{SPACE}ARE NOT MEANINGF 
UL FOR{2 SPACES}ODD"; 
IF (SI)/2<>INT(SI/2) THE 
NPRINT" NUMBERS OF SIDE 
S BECAUSE THEY DO NOTPA 
ss"; 

IF (SI/2)<>INT(SI/2) THE 
NPRINT"THROUGH THE CENT 
ER.":GOTO310 

PRINT "DIAGONAL 

{7 SPACES}=";:PRINT2*(R 


=" 


) 

PRINT"WIDTH{16 SPACES}= 
";:PRINT2* (SIN (A/ (1860/7. 
)))* (R) 

PRINT"AREA{11 SPACES}=" 
;2PRINT (SI) *(SD)* (SIN( 
A/(180/T)))*(R)/2 
PRINT" INTERNAL ANGLE 
7180-(366/SI) :GOTO620 
INPUT"WIDTH{1@ SPACES}= 
";WD 

IF (SI) /2<>INT (SI/2) THEN 
PRINT"YOU CAN'T SAY WID 
TH OF ODD SIDED FIGURE. 
"SEND 

H=WD/2 

C=366/S1/2 
PRINT"SIDE{11 SPACRS}=" 
} : PRINT 2* (H* (TAN (C/ (186 
7)))) 

PRINT" DIAGONAL 

{7 SPACES}=";:PRINT H/C 
OS (C/(18G/T)) *2 
PRINT"AREA{11 SPACES}=" 
7: PRINT (H* (TAN (C/ (1860/7 
)))) *H*ST 

PRINT" INTERNAL ANGLE =" 
7180-(366/SI) :GOTO626 


AH 


EC 


FK 


BA 


Qu 
HS 
BQ 
QH 
SH 
FR 
SA 
EP 


CQ 


PE 


PK 


JQ 


RE 


BM 


PD 


EQ 
JP 
BK 


HC 


FS 


PE 


419 
426 


430 
446 


456 


460 


476 


486 


496 
506 
516 
526 
530 
540 
550 
566 


570 


580 


596 


666 


6108 


626 


625 


6368 
646 
650 


66935 AS="" 


69640 


60050 


INPUT" DIAGONAL 

{7 SPACES}=";DI 
B=360/S1/2 

A=90-B 

IF (SI/2) <>INT (SI/2) THEN 
PRINT"YOU CAN'T DEFINE 
{SPACE}WIDTH OR DIAG OF 
ODD "; 

IF (SI/2) <>INT (SI/2) THEN 
PRINT"{2 SPACES}SIDED F 
IGURE.":END 
PRINT"WIDTH{1@ SPACES}= 
"5 :PRINT (DI) *SIN(A/ (180 


7) 
PRINT"SIDE{11 SPACES}=" 
7 PRINT ((DI/2)*COS (A/(1 
80/1)))*2 
AR=((DI) *SIN(A/(186/T) ) 
)* ((DI/2) *COS (A/ (18871) 
))*S1/2 
PRINT"AREA{11 SPACES}=" 
72 PRINT (AR) 
PRINT" INTERNAL ANGLE 
7180-(360/S1) :GOTO620 
INPUT"AREA{11 SPACES}=" 
7AR 
AT=AR/SI1/2 
B=360/S1/2 
A=90-B 
PRINT"SIDE{11 SPACES}=" 
72* (SQR (2*AT*TAN (B/ (186 
7¥)))) 
IF (SI/2) =INT (SI/2)THENS 
90 
IF (SI) /2<>INT((SI)/2)TH 
ENPRINT"ODD NUMBER SIDE 
S HAS NO WIDTH OR"; 
PRINT" DIAG.{2 SPACES}D 
EFINED.":GOTO616 
PRINT "DIAGONAL 
{7 SPACES}=";2* (SQR(2*A 
T*TAN (B/(186/T)))) /SIN( 
B/(186/]) 
PRINT"WIDTH{1@ SPACES}= 
"s (SQR(2*AT*TAN (B/(186/ 
T)))) *#PAN (A/ (180/T) ) *2 
PRINT" INTERNAL ANGLE =" 
7180-(360/SI) 
INPUT"ANOTHER PROBLEM ( 
A), HARDCOPY (H) OR 
{4 SPACES}QUIT (Q)";E$ 
IFES$<>"A"ANDES<>"H"ANDE 
$<>"Q"/THENPRINT"* ONLY 
{SPACE}'A' OR 'H' OR 'Q 
' *":GOT062G 
IFES="A"THENGOTOG 
IFES$="H"THENGOSUB60035 
IFES="Q"THENPRINTCHRS (3 
G):PRINT"{CLR}* THANKS. 
I'D BE GLAD TO HELP AG 
AIN *":END 
OPEN4,4:2=1623: 
FORY=6T0 24: FORX=8T039 
2Z=Z+1 
CH=PEEK (2) : 1ECH>128TH 
ENCH=CH-128 
IFCH<320RCH>95THENCH= 
CH+64:GOTO6G076 


RK 606660 IFCH>63ANDCH<96THENCH 
=CH+32 


SH 60070 AS=AS+CHRS (CH) :NEXT:P 
RINT#4,AS:AS=""sNEXT: 
CLOSE4 


Rowland Medler devised this program 
when an architect requested the 
length of an eight-sided auditorium 
whose area was 10,000 square feet. 
Medler is 74 years old and lives in 
Gainesville, Florida. a 


— 


TYPING AIDS 


MLX, our machine language entry program 
for the 64 and 128, and The Automatic 
Proofreader are utilities that help you type 
in Gazette programs without making mis- 
takes. To make room for more programs, 
we no longer include these labor-saving util- 
ities in every issue, but they can be found 
on each Gazette Disk and are printed in all 
issues of Gazette through June 1990. 

If you don't have access to a back is- 
sue or to one of our disks, write to us, and 
we'll send you free printed copies of both 
of these handy programs for you to type in. 
We'll also include instructions on how to 
type in Gazette programs. Please enclose 
a self-addressed, stamped envelope. 
Send a self-addressed disk mailer with 
appropriate postage to receive these pro- 
grams on disk. 

Write to Typing Aids, COMPUTE's Ga- 
zette, 324 West Wendover Avenue, Suite 
200, Greensboro, North Carolina 27408, 


ONLY ON DISK 


Here is the bonus program you'll find 
on this month's Gazette Disk. 


Weather Plus 128 
By George E. Black 
Adrian, MO ' 
Use your 80-column 128 to record tem- 
peratures, humidity, wind direction, and 
other weather data to make accurate 
short-range weather forecasts. 


Order the September Gazette Disk. 
The price is $9.95 plus $2.00 shipping 
and handling. Write to Gazette Disk, 
COMPUTE Publications, 324 West Wen- 
dover Avenue, Suite 200, Greensboro, 
North Carolina 27408. 


SEPTEMBER 1992 COMPUTE G-39 


HOW TO TYPE IN GAZETTE PROGRAMS 


Each month, Gazette publishes pro- 
grams for the Commodore 128 and 64. 
Each program is clearly marked as be- 
ing written for the 128, 64, or both. Be 
sure to type in the correct version for 
your machine. All 64 programs run on 
the 128 in 64 mode. Be sure to read the 
instructions in the corresponding article. 
This can save time and eliminate any 
questions which might arise after you be- 
gin typing. 

At irregular intervals, we publish two 
Programs designed to make typing in 
our programs easier: The Automatic 
Proofreader, for BASIC programs, and a 
128 and 64 version of MLX, for entering 
machine language programs. In order to 
make more room for programs, we do 
not print these handy utilities in every is- 
sue of the magazine. Copies of these pro- 
grams are available on every Gazette 
Disk. If you don’t have access to a disk, 
write us, and we'll send you free copies 
of both of these programs. Please en- 
close a stamped, self-addressed enve- 
lope. Write to Typing Aids, COMPUTE's 
Gazette, 324 West Wendover Avenue, 
Suite 200, Greensboro, North Carolina 
27408. 

When entering a BASIC program, be 
especially careful with DATA statements, 
as they are extremely sensitive to errors. 
A mistyped number in a DATA state- 
ment can cause your machine to “lock 
up” (you'll have no control over the com- 


When You Read: Press: 
{CLR} 
{HOME} 
{UP} [sHuFr 
{DOWN} 
{LEFT} —CRSR 
{RIGHT} unio CRSR == 
{RVS) [err |{_9 | 
{OFF} [erat] [0 | 
{BLK} [ss 
{WHT} | 
{RED} (err |[ 3] 
{CN} [erat] [4] 


G-40 COMPUTE SEPTEMBER 1992 


puter). If this happens, the only recourse 
is to turn your computer off and then on, 
erasing what was in memory. This could 
cause you to lose valuable data, so be 
sure to save a program before you run 
it. If your computer crashes, you can al- 
ways reload the program and look for 
the error. 


Special Characters 

Most of the programs listed in each is- 
sue contain special control characters. 
To facilitate typing in any programs 
from Gazette, use the following listing 
conventions. 

The most common type of control char- 
acters in our listings appear as words 
within braces: {DOWN} means to press 
the cursor-down key; {5 SPACES} 
means to press the space bar five 
times. {RVS} means to enter Reverse 
mode by simultaneously pressing the 
Ctrl key and the 9 key. 

To indicate that a key should be shift- 
ed (hold down the Shift key while press- 
ing another key), the character is under- 
lined. For example, A means hold down 
the Shift key and press A. You may see 
strange characters on your screen, but 
that’s to be expected. If you find a num- 
ber followed by an underlined key en- 
closed in braces (for example, {8 A}), 
type the key as many times as indicated 
(in our example, enter eight shifted A's). 

If a key is enclosed in special brack- 


Z 
g 


See: 
[ems] : = 
ferme | [s_] I [ur] (t] 
(erm ][ >] 
[7] } BBD | For commodore 64 onty 
T=] rj rae) [commovore] [1] Fy 
(Ecc) | E23 ComMoporé](2] RR 
(BB) [ses] Rag ComMoDORE| {3 | 
i) Gee) | ES? coool 
(55) HB) ogs3 [eoumonons [5] Fes 
(F6) Mi gsa commovore] |< | fll 
{F7} [7] R73 [commopore| | 7 | 
{8} [sur]? ] MM] gsg [comMoporE]| 8] gm 


ets, [<>], hold down the Commodore 
key (at the lower left corner of the key- 
board) and at the same time press the in- 
dicated character. 

Rarely, you'll see a single letter of the 
alphabet enclosed in braces. This can 
be entered on the Commodore 64 by 
pressing the Ctrl key while typing the let- 
ter in braces. For example, {A} means to 
press Ctrl-A. 


The Quote Mode 

You can move the cursor around the 
screen with the Crsr keys, but you may 
want to move it under program control, 
as in examples like {LEFT} and {HOME} 
in the listings. The only way the comput- 
er can tell the difference between direct 
and programmed cursor control is the 
quote mode. 

Once you press the quote key, you're 
in quote mode. It can be confusing 
when you are in this mode if you 
mistype a character and cursor left to 
change it. You'll see a graphics symbol 
for cursor left. Use the delete key to 
back up and edit the line from the begin- 
ning. Type another quotation mark to get 
out of quote mode. 

If things get too confusing, exit quote 
mode by pressing Return; then cursor 
up to the mistyped line and fix it. If the 
mistake involves cursor movement, how- 
ever, you must press the quote key to 
reenter quote mode. a